HTML Input Types (mar) | | 1,182 |
forms |
Use the Dialog Element (Reasonably) (sco) | | 1,181 |
modals, accessibility |
Screen Readers Support for Text Level HTML Semantics (ste/tpg) | | 1,180 |
semantics, screen-readers, support |
Optimal Images in HTML (ste/bui) | | 1,179 |
images, backgrounds, performance, optimization |
The Modern Way of Serving Images (kur) | | 1,178 |
images, performance |
Musing Upon an “[alt]” Text Badge on Images (chr) | | 1,177 |
accessibility, css |
If You Need a Link, Don’t Use a Button (tem) | | 1,176 |
semantics, links, buttons, accessibility |
Improve Your HTML Semantic With Pico CSS | | 1,175 |
pico |
Unordered Lists in Main Navigations (mat) | | 1,174 |
lists, navigation, semantics |
Two Ways to Safely Break a Long Word in HTML (ami) | | 1,173 |
|
Three Attributes for Better Web Forms (ada) | | 1,172 |
forms, attributes |
Data URLs and Pool in Your URL (wes) | | 1,171 |
data-urls |
Faking Min Width on a Table Column (css) | | 1,170 |
tables, css, responsive-design |
Customizing HTML Form Validation (dav) | | 1,169 |
forms, validation |
How to Build Great HTML Form Controls (aus/fre) | | 1,168 |
how-tos, forms |
7 Required Steps to Secure Your Iframes Security | | 1,167 |
iframes, security, xss, http-headers, csp |
Conditional API Responses for JavaScript vs. HTML Forms (aus) | | 1,166 |
javascript, forms, security, comparisons |
Website Accessibility (15 Best Practices) (bru) | | 1,165 |
accessibility, best-practices, content, readability, captcha, images, alt-text, forms, focus, tooling |
Theme Toggles | | 1,164 |
websites, theming, toggles, react |
A Problem With Link Relationships (j9t) | | 1,163 |
links, metadata, semantics, maintainability |
Enforcing Better HTML Markup With Eleventy (mat) | | 1,162 |
semantics, conformance, eleventy |
Building an Accessible Theme Picker With HTML, CSS, and JavaScript (fos) | | 1,161 |
accessibility, css, javascript, theming, functionality |
A Theory of Web Relativity (alv/mat) | | 1,160 |
metadata, structured-data |
Common Nesting Issues in HTML (cit/mat) | | 1,159 |
nesting |
Interop 2022: End of Year Update (rac/dev) | | 1,158 |
interoperability, web-platform, browsers, css |
Mini-Guide to Add an Image (its/mat) | | 1,157 |
images |
HTML Dialog (5t3) | | 1,156 |
modals |
Modern HTML as a Foundation for Progressive Enhancement (ffo/mat) | | 1,155 |
progressive-enhancement |
5 HTML Elements, and a Partridge in a Despair Tree (mat) | | 1,154 |
semantics, accessibility |
An HTML-First Mental Model (noa) | | 1,153 |
dom, performance |
Get That Marquee AeStHeTiC (dni/mat) | | 1,152 |
css, effects |
4 Ways CSS “:has()” Can Make Your HTML Forms Even Better (aus) | | 1,151 |
css, selectors, forms |
Table Like It’s 2023 (cli/mat) | | 1,150 |
tables |
One Day We’ll Have a Fully Customisable Select (hdv/mat) | | 1,149 |
css |
There Can Be Only One: Options for Building “Choose One” Fields (aar/mat) | | 1,148 |
forms |
Dear Developer, Your Assumptions Are Wrong (mat) | | 1,147 |
|
Inside the Mind of a Frontend Developer: Article Layout (sha) | | 1,146 |
css, layout |
A Modern HTML Template (2022) | | 1,145 |
templates |
Meaningful Labels Using ARIA—or Not (mat) | | 1,144 |
accessibility, forms, labels, aria |
4 More HTML Concepts You Didn’t Know (j9t) | | 1,143 |
concepts, forms, focus |
Reading the Meter (sup/mat) | | 1,142 |
semantics, accessibility |
Brief Note on Description List Support (aar) | | 1,141 |
lists, semantics, accessibility, screen-readers, support |
Landmarks and Where to Put Them (kil/mat) | | 1,140 |
semantics, aria, accessibility |
You Don’t Need ARIA for That (den/mat) | | 1,139 |
accessibility, aria |
How to Transfigure Wireframes Into HTML (mat) | | 1,138 |
how-tos, prototyping, conversion |
HTML Semantics and Accessibility Cheat Sheet (web) | | 1,137 |
cheat-sheets, semantics, accessibility |
Newer Things to Know About Good Ol’ HTML Lists (css) | | 1,136 |
lists, semantics |
Shadow DOM and Accessibility: The Trouble With ARIA (nol) | | 1,135 |
dom, shadow-dom, accessibility, aria |
Upgrade Your HTML IV (j9t/fro) | | 1,134 |
books, frontend-dogma, minimalism, craft, conformance |
HTML Content Model Categories | | 1,133 |
semantics |
Lazy Loading Images in HTML (sim) | | 1,132 |
performance, lazy-loading |
The Shape-Shifting “a” Element | | 1,131 |
links, semantics |
The “label” Element | | 1,130 |
labels, semantics |
What Happened to Text Inputs? (hey) | | 1,129 |
videos, forms |
Page Title Conventions (ada) | | 1,128 |
accessibility, seo |
Brief Note on “aria-readonly” Support (aar) | | 1,127 |
accessibility, aria, assistive-tech, support |
You Don’t Need HTML (ede) | | 1,126 |
websites, web-platform |
A Guide to Keyboard Accessibility: HTML and CSS (its/sma) | | 1,125 |
guides, accessibility, keyboard-navigation, css |
Foundations: Native Versus Custom Components (tet) | | 1,124 |
accessibility, fundamentals, components, comparisons |
Dialogs, Modality, and Popovers Seem Similar—How Are They Different? (hdv) | | 1,123 |
semantics, accessibility, modals, pop-overs |
Inside the Mind of a Frontend Developer: Hero Section (sha) | | 1,122 |
css |
6 Steps to Improve HTML Images for Users and Developers (aus) | | 1,121 |
images, performance, responsive-design |
16 Rare HTML Tags You Really Should Know | | 1,120 |
semantics |
HTML and CSS Features, Tips for a 10× Faster Page Loading Speed | | 1,119 |
css, performance, tips-and-tricks |
Intro to HTML-First Frontend Frameworks | | 1,118 |
introductions, frameworks |
Building a Tooltip Component (arg/dev) | | 1,117 |
components, tooltips, css |
The Truth Behind Implicit/Explicit Form Labels | | 1,116 |
forms, labels, accessibility |
Edit Someone Else’s Website: “contenteditable” and “designMode” (aus) | | 1,115 |
|
Common ARIA Mistakes and How to Avoid Them (ale) | | 1,114 |
accessibility, aria, mistakes |
HTML 2022: 20 Additional Observations From Analyzing the Web Almanac Data (j9t) | | 1,113 |
metrics, web-almanac |
A Little Semantic HTML Trick for React Components | | 1,112 |
react, semantics, components, tips-and-tricks |
How to Optimize Resource Loading With the “fetchpriority” Attribute (deb) | | 1,111 |
how-tos, performance, optimization |
Foundations: HTML Semantics (tet) | | 1,110 |
accessibility, fundamentals, semantics |
When Going Somewhere Does a Thing: On Links and Buttons (kil) | | 1,109 |
accessibility, links, buttons, semantics |
Templating in HTML (kit) | | 1,108 |
javascript |
GIFs Without the .gif: The Most Performant Image and Video Options Right Now (oll/css) | | 1,107 |
performance, multimedia, images, gif |
Named Element IDs Can Be Referenced as JavaScript Globals (css) | | 1,106 |
javascript |
Learn HTML (est/dev) | | 1,105 |
courses |
Markup (j9t/htt) | | 1,104 |
web-almanac, studies, research, metrics |
Two Things I Learned by Validating My HTML Again | | 1,103 |
conformance, lessons |
Streamable HTML Fragments (dev) | | 1,102 |
streaming |
Quick Reminder: HTML5 “required” and “pattern” Are Not a Security Feature (cod) | | 1,101 |
forms, security |
Will Serving Real HTML Content Make a Website Faster? Let’s Experiment! | | 1,100 |
studies, research, performance |
A “details” Element as a Burger Menu Is Not Accessible (ger/clo) | | 1,099 |
disclosure-widgets, semantics, accessibility |
How to (Not) Make a Button | | 1,098 |
how-tos, accessibility, buttons, semantics |
Brief Note on Super- and Subscript Text (aar) | | 1,097 |
accessibility, support, assistive-tech |
Why the Number Input Is the Worst Input | | 1,096 |
forms, validation, accessibility |
Making Sense of WAI–ARIA: A Comprehensive Guide (sma) | | 1,095 |
guides, accessibility, aria |
Wtf Is an Island and Why Is It in My Website? | | 1,094 |
frameworks, architecture, concepts |
2022: 0 of the Global Top 100 Websites Use Valid HTML (j9t) | | 1,093 |
css, conformance, metrics, quality, craft |
The “details” and “summary” Elements, Again (sco) | | 1,092 |
disclosure-widgets, accessibility |
Nuclear Footnotes (mey) | | 1,091 |
css |
What’s New With Forms in 2022? (oll/css) | | 1,090 |
forms, javascript |
Building the Main Navigation for a Website (mat/dev) | | 1,089 |
navigation, css |
HTML Markup Tips for Developing Accessible Websites (low/the) | | 1,088 |
accessibility, aria |
A Content Warning Component (kit) | | 1,087 |
components, css |
Disabled JavaScript Turns Off Native Lazy Loading (ste) | | 1,086 |
javascript, performance, lazy-loading |
Don’t Overwrite Visual Labels With “aria-label” (ash) | | 1,085 |
accessibility, aria, labels |
Beginner’s Guide to Lists and How to Make Them Accessible (pop) | | 1,084 |
guides, lists, accessibility |
Accessible Lists and Tables (pop) | | 1,083 |
accessibility, lists, tables |
Should I Use a Button or a Link? (ash) | | 1,082 |
buttons, links, semantics |
CSS Classes Considered Harmful | | 1,081 |
css |
Short Note on “figure” and “figcaption” (ste) | | 1,080 |
accessibility |
TIL: You Can Access a User’s Camera With Just HTML (aus) | | 1,079 |
permissions |
Creative List Styling (mic/dev) | | 1,078 |
lists, css |
Exploring the Underrated “output” Element | | 1,077 |
|
Table Column Alignment With Variable Transforms (mey) | | 1,076 |
css, tables, transforms, alignment |
Tip: Use “fetchpriority=high” to Load Your LCP Hero Image Sooner (add) | | 1,075 |
performance, web-vitals |
On Ratings and Meters (lea) | | 1,074 |
semantics, css |
Capturing Images and Videos From the Camera of Mobile Devices Using HTML (ami) | | 1,073 |
multimedia, mobile |
The Infinite Marquee | | 1,072 |
css, animations |
Making a Website Under 1 kB | | 1,071 |
performance, minimalism |
Ruby Styling (ri/web) | | 1,070 |
ruby-markup, css |
Abbreviations Suck (cfe) | | 1,069 |
accessibility |
“<article>” vs. “<section>”: How to Choose the Right One (sma) | | 1,068 |
semantics, comparisons |
Roundup of Recent Document Outline Chatter (geo/css) | | 1,067 |
headings, semantics, accessibility |
Subheadings, Subtitles, Alternative Titles, and Taglines in HTML (ste/tpg) | | 1,066 |
semantics, headings, microcontent, accessibility |
Abbreviations Can Be Problematic (tem) | | 1,065 |
accessibility |
Minimal Social Markup (j9t) | | 1,064 |
social-media, open-graph, minimalism |
What Is the Best Way to Mark Up an Exclusive Button Group? (lea) | | 1,063 |
semantics, accessibility, aria |
What You Need to Know About ARIA and How to Fix Common Mistakes (pop) | | 1,062 |
accessibility, aria, mistakes |
Avoiding “<img>” Layout Shifts: “aspect-ratio” vs. “width” and “height” Attributes (jaf) | | 1,061 |
performance, web-vitals, comparisons, attributes, aspect-ratio, css |
Why the HTML Outlining Algorithm Was Removed From the Spec—the Truth Will Shock You! (bru) | | 1,060 |
semantics, accessibility |
Two Levels of Customising “<selectmenu>” (hdv) | | 1,059 |
accessibility |
Best Practices for Images | | 1,058 |
images, best-practices |
Farewell to HTML5Rocks (dev) | | 1,057 |
community, history |
What the Hell Is “<!DOCTYPE html>”? | | 1,056 |
doctype-switching |
Are You Sure That’s a Number Input? (kil) | | 1,055 |
|
My Wonderful HTML Email Workflow (jos) | | 1,054 |
mjml, markdown, mdx, email, processes |
HTML Cheatsheet | | 1,053 |
examples, cheat-sheets |
Write HTML Right | | 1,052 |
optimization |
Level Up Your Link Previews in Slack (whi) | | 1,051 |
social-media, open-graph, links, slack |
8 Shocking HTML Tips You Probably Don’t Know About | | 1,050 |
tips-and-tricks |
The “Form” Element Created the Modern Web—Was It a Big Mistake? (wir) | | 1,049 |
forms, history, mistakes |
Why Are Iframe Titles Important for Accessibility? | | 1,048 |
accessibility, iframes, writing |
A Perfect Table of Contents With HTML and CSS (nza/css) | | 1,047 |
css |
HTML Cheat Sheet: A Quick Reference Guide for HTML Developers | | 1,046 |
guides, semantics, examples, cheat-sheets |
Making Disabled Buttons More Inclusive (san/css) | | 1,045 |
forms, buttons, focus, aria, attributes, accessibility |
Conditionally Loading CSS or Any Resource Using Media Queries (ami) | | 1,044 |
media-queries, performance |
Building a Button Component (arg/dev) | | 1,043 |
components, css, javascript, buttons |
How the HTML “lang” Attribute Helps Accessibility | | 1,042 |
accessibility, attributes, localization |
Don’t Fight the Browser Preload Scanner (mal/dev) | | 1,041 |
browsers, parsing, performance |
XHTML Syntax Is Still Worth Using (tem) | | 1,040 |
xhtml |
Divs Are Bad! (mat) | | 1,039 |
semantics |
Learn HTML [and] CSS (jad) | | 1,038 |
websites, courses, css |
What’s Your Heading? (col) | | 1,037 |
accessibility, headings, semantics |
Lost in Translation (mat/btc) | | 1,036 |
videos, design, accessibility, css |
Please, Stop Disabling Zoom (mat) | | 1,035 |
accessibility, zooming |
How to Use Videos With Alpha Transparency on the Web (ben) | | 1,034 |
how-tos, multimedia, transparency |
Under-Engineered Multi-Selects (aar) | | 1,033 |
accessibility, aria |
Foundations: Lists (tin/tet) | | 1,032 |
accessibility, fundamentals, lists |
The CSS Art Paradox (j9t) | | 1,031 |
css, art, quality |
Introducing “inert” (dev) | | 1,030 |
introductions, attributes, accessibility, keyboard-navigation |
Common Frontend Interview Questions I’ve Been Asked | | 1,029 |
interviewing, javascript |
Plain Old Semantic HTML: A Perfect Basis for Accessibility | | 1,028 |
accessibility, semantics |
Non-Interactive Elements With the “inert” Attribute (web) | | 1,027 |
attributes, semantics |
How Web Browsers Work: Parsing the HTML | | 1,026 |
browsers, parsing |
Progressive Enhancement and HTML Forms: Use “FormData” (bra) | | 1,025 |
forms, progressive-enhancement |
Does Valid and Semantic HTML Still Matter? (5t3+) | | 1,024 |
podcasts, semantics, conformance |
Building a Dialog Component (arg/dev) | | 1,023 |
components, modals, css, javascript |
Those HTML Elements You Never Use | | 1,022 |
semantics |
How to Turn HTML Webpage Into an Image? | | 1,021 |
how-tos, images, conversion |
Designing Better Breadcrumbs (vit/sma) | | 1,020 |
usability, navigation, breadcrumbs |
HTML Is All You Need to Make a Website (whi) | | 1,019 |
|
Alternative Text (Alt Text) (pop) | | 1,018 |
accessibility, images, writing, alt-text |
12 Years Beyond a HTML Joke (ste) | | 1,017 |
semantics |
“aria-labelledby” Usage Notes (ste) | | 1,016 |
accessibility, aria, labels |
Accessible Cards (kit) | | 1,015 |
accessibility, css |
How to Match HTML Elements With an Indeterminate State (ste) | | 1,014 |
how-tos, css, selectors |
HTML-Only Keyboard Shortcuts (ami) | | 1,013 |
accessibility, keyboard-navigation, keyboard-shortcuts |
Picture Perfect Images With the Modern “<img>” Element (add) | | 1,012 |
images, performance, web-vitals |
Those HTML Attributes You Never Use (lou/sma) | | 1,011 |
attributes |
Write HTML, the HTML Way (Not the XHTML Way) (j9t/css) | | 1,010 |
xhtml, optimization |
HTML Semantics (cfe) | | 1,009 |
semantics |
The Impact That High Quality Mark-Up Can Have on Accessibility, Performance, and Discoverability | | 1,008 |
videos, accessibility, performance |
All HTML and CSS Cheatsheets in One Place | | 1,007 |
css, cheat-sheets |
Building a Loading Bar Component (arg/dev) | | 1,006 |
components, css, javascript |
The Weirdly Obscure Art of Streamed HTML | | 1,005 |
streaming, performance |
How to Automatically Size a Textarea Based on Its [Text] Using Vanilla JavaScript (cfe) | | 1,004 |
how-tos, javascript |
Aligning Content in Different Wrappers (sha) | | 1,003 |
css, alignment |
It Needs to Map Back to a Role (eri) | | 1,002 |
accessibility, aria, semantics |
A Look at the Dialog Element’s Super Powers (ste) | | 1,001 |
modals, javascript |
Creating Native Web Components (cod) | | 1,000 |
web-components, javascript |
It’s Always Been You, Canvas2D (dev) | | 999 |
css, canvas, javascript |
Foundations: Headings (tet) | | 998 |
accessibility, fundamentals, headings, semantics |
Web Component Pseudo-Classes and Pseudo-Elements Are Easier Than You Think (css) | | 997 |
css, web-components |
(Not So) Short Note on Being Owned (ste) | | 996 |
aria, accessibility |
HTML Tips and Tricks | | 995 |
tips-and-tricks |
HTML Comments Work in JavaScript Too | | 994 |
javascript, comments |
Support for Marking Radio Buttons Required, Invalid (aar) | | 993 |
accessibility |
Column Headers and Browser Support (aar) | | 992 |
accessibility, semantics |
There Is No Character Limit for “Alt Text” (yat) | | 991 |
accessibility, alt-text, images |
How to Create a Search Page for a Static Website With Vanilla JS (cfe) | | 990 |
how-tos, functionality, search, javascript |
Why Radio Buttons Are Called Radio Buttons in UIs? (ami) | | 989 |
semantics, naming |
MHTML in Chromium | | 988 |
browsers |
Replace JavaScript Dialogs With the New HTML Dialog Element (sto/css) | | 987 |
modals, semantics |
Introducing the Dialog Element (web) | | 986 |
introductions, modals |
HTML Cheat Sheet—HTML Elements List Reference (fre) | | 985 |
semantics, examples, cheat-sheets |
24 Lesser-Known HTML Attributes You May Want to Use | | 984 |
attributes |
How to Convert Markdown to HTML (red) | | 983 |
how-tos, markdown, conversion |
More to Give Than Just the Div: Semantics and How to Get Them Right (hdv) | | 982 |
semantics, accessibility |
Context-Aware Web Components Are Easier Than You Think (css) | | 981 |
web-components, javascript |
Div Divisiveness (sco) | | 980 |
semantics |
On the Peculiarities of Counting the Number of HTML Elements (j9t) | | 979 |
|
Find HTML Parsing Errors (pat/dev) | | 978 |
browsers, dev-tools, parsing, quality |
Boolean Attributes in HTML and ARIA: What’s the Difference? (hdv) | | 977 |
attributes, aria |
HTML Is General, ARIA Is Specific (dav) | | 976 |
aria |
Alt Tag Emptiness (ste) | | 975 |
accessibility, images, alt-text, aria |
Labeling the Point: Scenarios of Label Misuse in WCAG (tpg) | | 974 |
accessibility, forms, labels, wcag |
Accessible Heading Structure | | 973 |
accessibility, headings |
Faster Websites by Using Less HTML (j9t) | | 972 |
cross-posts, performance, optimization, minimalism |
Container Queries (5t3) | | 971 |
css, container-queries |
Form Autocomplete (ben/5t3) | | 970 |
forms |
HTML Cheat Sheet | | 969 |
semantics, examples, cheat-sheets |
5 Common Misconceptions About WAI–ARIA and Accessibility | | 968 |
accessibility, aria |
Image Display Elements (5t3) | | 967 |
images, responsive-design |
How to Define Your Relationship to Sites You Link To (ste) | | 966 |
how-tos, links, semantics, seo |
4 HTML Concepts You Didn’t Know (j9t) | | 965 |
concepts, tables |
Ultimate HTML Cheatsheet | | 964 |
cheat-sheets |
CSS Can Help Improve Your HTML!? Buttons and Links | | 963 |
css, buttons, links, accessibility |
Details/Summary (5t3) | | 962 |
semantics, disclosure-widgets |
How Not to Create a Button (eev) | | 961 |
buttons, accessibility |
Embrace the Platform (bra/css) | | 960 |
css, javascript, web-platform |
Defer Non-Critical Resources | | 959 |
performance |
Markup (htt) | | 958 |
web-almanac, studies, research, metrics |
“aria-label” Is Not Always the Answer (eev) | | 957 |
aria, accessibility |
On Yak Shaving and “<md-block>”, a New HTML Element for Markdown (lea) | | 956 |
web-components, markdown |
The 6 Ways of Writing HTML (and Their Combinations) (j9t) | | 955 |
|
Control Layout in a Multi-Directional Website (css) | | 954 |
internationalization, css |
Dear HTML Element | | 953 |
|
How to Make Blob Menu Using HTML, CSS, and JavaScript | | 952 |
how-tos, css, javascript |
Generate a Pull Request of Static Content With a Simple HTML Form (css) | | 951 |
github |
Semantics and How to Get Them Right (hdv/btc) | | 950 |
videos, semantics, accessibility |
Get Your “Head” Straight (css/btc) | | 949 |
videos, performance |
Detecting Specific Text Input With HTML and CSS (chr/css) | | 948 |
css |
Designing a Reorderable List Component | | 947 |
lists, components, css |
Debugging HTML: Accessibility (mat/mat) | | 946 |
accessibility, debugging |
In Defence of Dialog | | 945 |
modals |
Learn Forms (dev) | | 944 |
courses, forms |
Building Real-Life Components: Facebook Messenger’s Chat Bubble (sha) | | 943 |
components, css |
Accessible Toggles (mic) | | 942 |
accessibility, toggles, javascript |
HTMLoween—HTML, JS, and CSS to Make Your Blood Boil | | 941 |
css, javascript |
Indecisive Skip Links and Their Targets—the Renaissance of the “<hr>” Element | | 940 |
accessibility, skip-links |
If HTML and ARIA Don’t Allow It, It’s Probably a Bad Idea (tem) | | 939 |
aria, accessibility |
Switch Role Support (aar) | | 938 |
accessibility, support |
Making the Web Developer’s Pilgrimage (j9t) | | 937 |
|
Semantic “menu” Context (sco) | | 936 |
semantics |
Decoupling HTML, CSS, and JavaScript in Design Systems (cfe) | | 935 |
css, javascript, design-systems |
What Each Markup Language Is Used For (sem) | | 934 |
overviews, xml, xhtml, sgml, mathml, amp, seo |
HTML With Superpowers (dav) | | 933 |
videos, components |