Tech is political: The people under attack in Palestine 🇵🇸, Iran 🇮🇷, and Lebanon 🇱🇧 are people like us. They’re our brothers and sisters, too. Read up on their history, scrutinize what you’re told, and demand that they be respected and included. Hide

Frontend Dogma

“html” News Archive (2)

Entry (Sources) and Additional TopicsDate#
Streaming HTML—Asynchronous DOM Updates Without JavaScript (inf)1,668
asynchronicity, dom, streaming
Ditch the Pixels: The Small and Vectorized Web (yor)1,667
svg, images
HTML Cheat Sheets: From Basics to Advanced Elements1,666
fundamentals, semantics, examples, cheat-sheets
The Ultimate Guide to Iframes (log)1,665
guides, iframes, javascript, security
Doing My Heading In (ste+)1,664
interviews, headings, accessibility
Maybe Don’t Name That Landmark (aar)1,663
semantics, accessibility
Reflection and Custom States in Web Components (cla)1,662
web-components
Fine-Tuning Text Inputs (gar)1,661
forms, attributes, usability
Semantic Code in HTML: What Is It and Does It Still Matter? (boa)1,660
semantics, accessibility, seo, maintainability, performance
Responsive Video Works Now—These Features Could Make It Work Better (sco)1,659
multimedia, responsive-design, performance
Alt Left (ste)1,658
accessibility, images, alt-text, anti-patterns
Here’s What We Learned From the First “State of HTML” Survey (sac/fro)1,657
lessons
Progressively Enhanced Popover Toggletips (mic)1,656
pop-overs, apis, progressive-enhancement
Multipage Version (wil)1,655
websites
Switching It Up With HTML’s Latest Control (sma)1,654
forms
HTML Tags You Might Not Know About1,653
Not So Short Note on “aria-label” Usage—Big Table Edition (ste)1,652
accessibility, aria, labels
When Should We Use Components and When Should We Just Use HTML? (chr)1,651
components, web-components
Test-Driving HTML Templates (xpm/mfo)1,650
templates, testing, server-side-rendering, conformance
We Need to Talk More About Conformance, if We Want to Stop Fantasy HTML (j9t)1,649
conformance, craft, quality
“<style>”: Inline Optimizations for the Bold (mor)1,648
css, performance, optimization
Ignore and Acknowledge “class” Attribute on Elements in CSS (ami)1,647
css, attributes
The Latest in Web UI (una)1,646
videos, css, layout, effects
State of HTML 2023 [Results] (sac+/dev)1,645
surveys, metrics
Upgrade Your HTML V (j9t/fro)1,644
books, frontend-dogma, minimalism, craft, conformance
Using Simple Tools as a Radical Act of Independence1,643
css, simplicity
Using the Popover API for HTML Tooltips (chr/fro)1,642
pop-overs, apis, tooltips
Combining CSS “:has()” and HTML “<select>” for Greater Conditional Styling (ami/sma)1,641
css, selectors, techniques
Popover API Is Here (chr/fro)1,640
apis, pop-overs
My Approach to HTML Web Components (ada)1,639
web-components
Design Déjà Vu (mal)1,638
design, css, history, comparisons
The HTML, CSS, and SVG for a Classic Search Form (chr/fro)1,637
search, forms, css, svg
How to Escape JavaScript for a Script Tag1,636
how-tos, javascript, escaping
HTML Attributes vs. DOM Properties (jaf)1,635
attributes, dom, comparisons
Images as the First Thing in a Button or Link (tem)1,634
accessibility, images, buttons, links
Invoking Elements by Using Only HTML: A First Look at Invokers (uti)1,633
modals, pop-overs
My Code Formatting Guidelines (val)1,632
guidelines, formatting, conventions, javascript, prettier, configuration
Converting Plain Text to Encoded HTML With Vanilla JavaScript (sma)1,631
conversion, javascript
Making Disabled Buttons More Accessible1,630
accessibility, buttons, aria
The Biggest Lie in HTML1,629
videos
ARIA in HTML (sco+/w3c)1,628
standards, accessibility, aria
Don’t Use the “maxlength” Attribute to Stop Users From Exceeding the Limit (ada)1,627
attributes, forms, usability
My “Skip to Content” Markup Was Breaking the Back Button on iOS (db)1,626
skip-links, accessibility, mobile
The Dos and Don’ts of Using “tabindex” in Web Design (a11)1,625
accessibility, keyboard-navigation
Figma Prototypes vs. HTML Prototypes (ada)1,624
design, processes, prototyping, figma, comparisons
Faster Websites With the “picture” Element (fra)1,623
images, performance
Testing HTML With Modern CSS (hey)1,622
css, testing, quality
21 HTML Tips You Must Know About1,621
tips-and-tricks
How to Think About HTML Responsive Images (db)1,620
how-tos, images, responsive-design
When to Use “tabindex="0"” (gra/tet)1,619
accessibility, keyboard-navigation, focus
Svelte Parses HTML All Wrong (ric)1,618
svelte, parsing
How-To: 5 Steps to Detect Invalid HTML Breaking Your [Site’s Performance] (erw)1,617
how-tos, conformance, performance
Kobold Letters (wed)1,616
email, support
On “disabled” and “aria-disabled” Attributes (kit)1,615
accessibility, attributes, aria
How Invalid HTML Elements Impact Web Performance (erw)1,614
conformance, performance
On Popover Accessibility: What the Browser Does and Doesn’t Do (hdv+)1,613
accessibility, pop-overs
Ruby Is Complicated1,612
The Problem With Data Attributes for Text Effects (man)1,611
custom-data, css, typography, effects
HTML Performance Optimization: Tips for Faster Loading Pages1,610
landing-pages, performance, optimization, tips-and-tricks
Distinguishing Between ARIA and Native HTML Attributes (deq)1,609
aria, attributes, accessibility, comparisons
Streaming HTML (chr/fro)1,608
php, streaming
CSS Button Styles You Might Not Know (dbu)1,607
css, buttons
The Quiet, Pervasive Devaluation of Frontend (col)1,606
css, craft, career, community
Making Room for Long List Markers With Subgrid (nol)1,605
lists, css, grids
Techniques to Break Words (aar)1,604
techniques, css, content
An HTML Switch Control (ann+/web)1,603
css, forms
YouTube Video Embedding Harm Reduction (jvo)1,602
multimedia, embed-code, youtube, privacy
ARIA (Are Ya) Afraid of the Dark? Unmasking Common HTML Monsters to Create Better User Experiences (deq)1,601
videos, accessibility, aria, user-experience
Filling Gaps With a Polyfill (jay)1,600
polyfills, css, javascript, history
HTML as the Baseline (cfe)1,599
progressive-enhancement
“X” Marks the Spot: Landmark Elements (stv)1,598
semantics, accessibility, assistive-tech, aria
HTML Attributes That Every Web Developer Should Know1,597
attributes, pop-overs, forms, custom-data
Practice Safe DSD With “setHTMLUnsafe” (It’s Complicated) (jar/van)1,596
dom, shadow-dom, apis, security
A Highly Configurable Switch Component Using Modern CSS Techniques (bel/pic)1,595
css
HTML Web Components on the Server Are Great (sco)1,594
web-components
Check for “accesskey” and “aria-keyshortcuts” Bookmarklet (ste)1,593
bookmarklets, accessibility, aria, keyboard-shortcuts
Unlocking the Power of HTML’s Native Browser “dialog” Element (ope)1,592
modals
Mind the Accessibility Gaps—Most of Accessibility Issues Originate in Design and How to Fix That (cer)1,591
accessibility, design, aria
A Call for Consensus on HTML Semantics (5t3)1,590
semantics
Create a Currency Converter With HTML, CSS, and Vanilla JavaScript1,589
functionality, css, javascript
The Color Input and the Color Picker (chr/fro)1,588
colors, usability
Basic Accessibility Mistakes I Often See in Audits (cfe)1,587
accessibility, mistakes, auditing, semantics, focus, links, buttons
Web Standards: The Guidelines That Every Developer Should Know1,586
standards, history, w3c, css, xml, wcag
Disable Browser Caching With “meta” HTML Tags1,585
metadata, caching
Options for “optgroup” Labeling of “options” (ste)1,584
accessibility, forms, browsers, screen-readers, support
Using “abbr” Element With “title” Attribute (aar)1,583
attributes, accessibility, browsers, assistive-tech, support
Buttons and Links—Common Misconceptions1,582
accessibility, semantics, buttons, links
Streaming HTML Out of Order Without JavaScript1,581
streaming
Accounting for Internationalization With CSS and HTML (spa)1,580
css, internationalization
Why I Like Web Components1,579
web-components
Stop Closing Void Elements (j9t)1,578
HTML Validation—Pros and Cons1,577
conformance
Never Underestimate HTML (lar/mat)1,576
user-experience, developer-experience
The Devil Is in the Details: A Look Into a Disclosure Widget Markup (its/mat)1,575
disclosure-widgets, css, javascript
“HTML First” Is Not HTML First (j9t)1,574
principles, quality, craft
Recapturing Early-Internet Whimsy With HTML (tec)1,573
trends, design, art, decoration
The Implied Web (hws/mat)1,572
accessibility, semantics
The Road to HTMHell Is Paved With Semantics (pep/mat)1,571
semantics, quality
You Might Be Looking for HTML “article”, Not “section” (san)1,570
semantics
Revisiting Fundamentals—Semantic Lists for Improved Accessibility (mis/mat)1,569
fundamentals, semantics, accessibility
HTML Can Do This?1,568
Web Components (may/5t3)1,567
web-components, shadow-dom, dom
The Ghosts of Markup Past (tho/mat)1,566
web, history
HTML: The Bad Parts (may/mat)1,565
Test-Driven HTML and Accessibility (mat)1,564
accessibility, testing, javascript
Embrace the Platform (bra)1,563
web-platform, css, javascript, resilience, progressive-enhancement, craft
Behavior Belongs in the HTML1,562
javascript, principles
“innerHTML” vs. “innerText” vs. “textContent”—What's the Difference? (fre)1,561
dom, javascript, comparisons
The “hidden” Attribute in HTML (mat)1,560
attributes
Media Queries in HTML Video (aar)1,559
multimedia, css, media-queries, accessibility
What the Slot? (dut/mat)1,558
web-components, dom, shadow-dom
Security Headers Using “<meta>” (sap/mat)1,557
security, csp
“sizes=auto” Pretty Much Requires “width” and “height” Attributes (eee)1,556
attributes, images, maintainability
The Hellish History of HTML: An Incomplete and Personal Account (cra/mat)1,555
history
Back to Basics: 5 HTML Attributes for Improved Accessibility and User Experience (dni/mat)1,554
fundamentals, attributes, accessibility, user-experience
The “form” Attribute—Enhancing Form Layout Flexibility (mat)1,553
forms, attributes
The UX of HTML (vas/mat)1,552
semantics, user-experience
How to Use Responsive HTML Video (…and Audio!) (sco)1,551
how-tos, responsive-design, multimedia
Weird HTML Hacks (ern)1,550
css, hacks, techniques, history
Shadow DOM Is for Hiding Your Shame1,549
shadow-dom, dom, web-components
The Elevator Pitch for Web Components (cfe)1,548
web-components, dom
The 9 HTML Elements That Have an Attribute of the Same Name, or: The 9 Attributes That Have an Element of the Same Name (j9t)1,547
attributes
An Attempted Taxonomy of Web Components (zac)1,546
web-components
HTML Web Components Are Just JavaScript? (mia/odd)1,545
web-components, javascript
Exclusive Accordions Exclude (yat)1,544
accessibility, accordions
Using Chrome’s Accessibility Tree for Manual Testing of HTML and ARIA (rus)1,543
videos, browsers, google, chrome, dev-tools, accessibility, testing, aria
HTML Web Components (jim)1,542
web-components
HTML First1,541
websites, principles
Do You Really Need to Validate Your HTML Code?1,540
discussions, conformance
HTML Web Components (ada)1,539
web-components, web-platform
Understanding HTML Landmarks and How to Apply Them (its/log)1,538
semantics, accessibility, aria
13 HTML Attributes You Should Know About1,537
attributes
Removing List Styles Without Affecting Semantics (mat)1,536
css, semantics, accessibility
Markdown to HTML in Seconds: Discovering mdhub (gli)1,535
markdown, conversion, tooling
The Anatomy of an Accessible Button1,534
buttons, accessibility, aria
Don’t Turn a Table Into an ARIA Grid Just for a Clickable Row (aar)1,533
tables, grids, aria, accessibility
2023: 0 of the Global Top 100 Websites Use Valid HTML (j9t)1,532
css, conformance, metrics, quality
Let’s Reinvent the Wheel (vas)1,531
css, user-experience, accessibility, web-platform
HTML vs. DOM? Let’s Debug Them (jec)1,530
videos, dom, debugging, comparisons
20 Simple Ways to Style the HTML “details” Element (ral)1,529
disclosure-widgets, css
HTML Meta Tags1,528
metadata
Splitting Within Selects (aar)1,527
accessibility, forms, browsers, support
Tailwind vs. Semantic CSS1,526
tailwind, css, semantics, comparisons, performance
Select Element: Now With Horizontal Rules (una)1,525
forms, semantics, browsers, google, chrome, apple, safari, support
Strikethrough Accessibility (den)1,524
accessibility, screen-readers, support
Using ChatGPT for Smart Truncation in Responsive Web Design1,523
content, responsive-design, ai, chatgpt
Why Unique ID Attributes Matter (deq)1,522
accessibility, attributes, conformance
On the Uniting Power of a Commitment to HTML Conformance (j9t)1,521
conformance, quality, community, web
Does the HTML “hr” (Horizontal Rule) Benefit Screen Reader Users?1,520
accessibility, screen-readers
CSS Findings From Photoshop Web Version (sha)1,519
css, adobe, photoshop, case-studies
The Selected Date Must Be Within the Last 10 Years (ger/clo)1,518
forms, validation
Extending the Properties of an HTML Element in TypeScript1,517
components, typescript
An Anchored Navbar Solution (mey)1,516
css, navigation
The Most Minimal Valid HTML Document (j9t)1,515
minimalism, conformance, templates
Easy Dark Mode With “color-scheme” (sar)1,514
slides, dark-mode, css, accessibility
Stop Using JS for That: Moving Features to CSS and HTML (kil)1,513
videos, javascript, css
How Mastodon Handles Images and Web Previews (rba)1,512
social-media, mastodon, open-graph, metadata, images
HTML Popover, Videos, and “display:blackhole” (bru)1,511
pop-overs, videos
Misconceptions Can Kill Accessibility Momentum (yat)1,510
accessibility, processes
State of HTML 2023 (sac+/dev)1,509
surveys
What Makes an Accessible Date Picker? Is It Even Possible? (rus/inc)1,508
videos, accessibility
How to Use the New “<search>” Element With WordPress (ede)1,507
how-tos, wordpress
What Can You Do With “data” Attributes? (cfe)1,506
custom-data, javascript
State of Web Accessibility, ARIA in HTML, and Missing UI Patterns (tin+/fwo)1,505
podcasts, accessibility, aria
Browser Video Players Review (aar)1,504
multimedia, accessibility, browsers, screen-readers, support
10 Things You Didn’t Know About HTML1,503
Dialog Dilemmas and Modal Mischief: A Deep Dive Into Popovers and How to Build Them (hdv)1,502
slides, pop-overs, modals, deep-dives
Small Details to Improve Your Website’s Experience (alv)1,501
user-experience, css, metadata
Let’s Make a Rubber Button With HTML, CSS, and SVG (tyl/clo)1,500
buttons, css, svg, images
Main-ly Speaking (col)1,499
accessibility
XUL and HTML (moz)1,498
xul, comparisons
An Intro to the “dialog” Element (cfe)1,497
introductions, modals, semantics
Supercharge Your HTML With WebC1,496
videos, webc
Progressively Enhanced HTML Accordion (aar)1,495
accordions, semantics, accessibility, progressive-enhancement
8 Common Heading Questions (pop)1,494
accessibility, headings
Progressively Enhanced Form Validation: HTML and CSS (ger/clo)1,493
forms, validation, progressive-enhancement, css
Responsive Images: DIY Implementation in 6 Steps1,492
images, responsive-design
A Blog Post With Every HTML Element (pat)1,491
semantics
Contextual Form Errors and ARIA (mar)1,490
accessibility, forms, aria
I’m Betting on HTML1,489
semantics
You Probably Don’t Need “http-equiv” Meta Tags (rvi)1,488
metadata, http, performance
Help Design the Inaugural “State of HTML” Survey (lea)1,487
community
Blockquotes in Screen Readers (aar)1,486
accessibility, screen-readers, support
I Blame the W3C’s HTML Standard for Ordered Lists (sid)1,485
lists, semantics
O “dialog” Focus, Where Art Thou? (mat)1,484
accessibility, modals, focus
Preload vs. Early Hints vs. Fetch Priority1,483
videos, performance, http, hints, comparisons, preloading
All the Places Where You Can Use “prefers-color-scheme” Media Query (ami)1,482
css, media-queries, javascript, dark-mode
The Case Against Self-Closing Tags in HTML (jaf)1,481
How to Validate HTML On-Line at W3C (wie)1,480
how-tos, conformance, tooling
The “article” Element and Screen Readers (mat)1,479
screen-readers, accessibility, support
And 4 More HTML Concepts You Didn’t Know (j9t)1,478
concepts, web-components
The “details” Element and In-Page Search (mat)1,477
disclosure-widgets, search, browsers, user-experience
Under-Engineered Comboboxen? (aar)1,476
forms, css, accessibility
Form and Search Landmarks (mat)1,475
aria, forms, browsers, assistive-tech, support
What Does the Image “decoding” Attribute Actually Do? (tun)1,474
attributes, images, performance
Button Types (ada)1,473
buttons
Django: A Security Improvement Coming to “format_html()” (ada)1,472
django, security
HTML Imports (w3c)1,471
You Can Stop Using “user-scalable=no” and “maximum-scale=1” in Viewport Meta Tags Now1,470
viewport, metadata, accessibility, responsive-design
Assume the Position—a Labeling Story (llo/tpg)1,469
accessibility, forms, labels
What Is Open Graph? How to Use It for Your WordPress Website?1,468
how-tos, open-graph, social-media, wordpress
Semantic Code in HTML: What Is It and Does It Still Matter? (boa)1,467
semantics
21 Awesome Web Features You’re Not Using Yet (fir)1,466
videos, css, javascript
Brief Note on Popovers With Dialogs (aar)1,465
support, accessibility, pop-overs, modals
11 HTML Best Practices for Login and Sign-Up Forms (sit/evi)1,464
best-practices, forms
Querying Parsed HTML in BigQuery (rvi)1,463
Introducing the Popover API (una)1,462
introductions, apis, pop-overs
Be Careful Using “Menu” (aar)1,461
aria, design, terminology
How to Build Lean Efficient Websites in 2023 (cfe)1,460
how-tos, progressive-enhancement, minimalism
Fieldsets, Legends, and Screen Readers Again (ste/tpg)1,459
accessibility, forms, screen-readers
Semantics and the “popover” Attribute: What to Use When? (hdv)1,458
attributes, semantics, accessibility, pop-overs
HTML Landmark Roles Screen Reader Demo (sch/mdn)1,457
videos, accessibility, screen-readers, voiceover, apple
Using HTML Landmark Roles to Improve Accessibility (sch/mdn)1,456
accessibility
Screen Readers Don’t Announce When the User Reaches the “maxlength” Character Limit (sim)1,455
accessibility, screen-readers, support
Respect Your Children (ste/tpg)1,454
accessibility, aria
How Large DOM Sizes Affect Interactivity, and What You Can Do About It (mal)1,453
performance, dom, optimization
Client-Side Rendering of HTML and Interactivity (mal)1,452
performance, client-side-rendering
How “x-default” Can Help You (met)1,451
internationalization, urls, attributes, search, google
How Far Back in Time Can I Take My Website’s Design1,450
web, design, history, css
Short Note: Why Isn’t “role=presentation”/“none” Allowed on Focusable Elements? (ste)1,449
accessibility, focus, aria
Considering Content Warnings in HTML (aar)1,448
content, dei
“details”/“summary” Inconsistencies (mat)1,447
disclosure-widgets, browsers, assistive-tech, support
It’s Very Likely That… (mat)1,446
semantics, buttons, modals
The “details” Element Is Amazing (fon)1,445
disclosure-widgets
HTML Accessibility API Mappings 1.0 (ste+/w3c)1,444
accessibility, apis
HTML Dark Mode (bt)1,443
dark-mode
New HTML Element: “search” (alv)1,442
semantics
What Is Semantic HTML? (dav)1,441
semantics
Five Pieces of Advice for More Accessible Websites (cit)1,440
accessibility
Modern HTML Email (Tables No Longer Required) (oll)1,439
email, tables
On-Page SEO Checklist: The Complete Task List for 2023 (sem)1,438
seo, checklists, semantics
HTML: Help Users to Download Files With the HTML “download” Attribute1,437
attributes
Fighting Inter-Component HTML Bloat (eli)1,436
components, semantics, quality
Getting Started With HTML Tables1,435
tables, introductions
The “search” Element (sco)1,434
accessibility, semantics
The End of Front-End Development (jos)1,433
outlooks, career
The H1 Conundrum: Understanding the Challenges of Heading Level One1,432
accessibility, semantics, headings
Progressively Enhancing a Table With a Web Component (ray)1,431
javascript, tables, web-components, progressive-enhancement
File Uploads for the Web: Uploading Files With HTML (aus)1,430
file-handling
The Broken Promise of Atomic CSS1,429
atomic-css, presentational-html, tailwind, css
A Tab Interface Before Its Time (aar)1,428
components
HTML Garden1,427
websites, art
50.1% Empty Links (mat)1,426
accessibility, links, semantics, seo
Relative Rounded Corners (bel)1,425
css
ARIA vs. HTML (aar)1,424
accessibility, aria, semantics, comparisons
Avoid Spanning Table Headers (aar)1,423
accessibility, assistive-tech, tables
Representation of Style (ste)1,422
semantics
A Step-by-Step Guide to Building Accessible Carousels (swe/sma)1,421
guides, carousels, accessibility, user-experience
Declarative Shadow DOM (dev+)1,420
shadow-dom, dom
Screen Readers Don’t Convey the Semantics of “strong” and “em” (mat)1,419
accessibility, screen-readers, semantics
Mastodon and Open Graph (drd)1,418
social-media, mastodon, metadata, open-graph
An Introduction to HTML Cheat Sheet1,417
introductions, semantics, cheat-sheets
Table of Contents Progress Animation (kev)1,416
css, javascript, animations, progress-indicators
Interop 2023 CMS Checkin (chr)1,415
interoperability, syndication, rss, atom, semantics
Rotating Gallery With CSS Scroll-Driven Animations (jhe)1,414
css, javascript, animations, scrolling
What Are HTML5 Semantic Elements?1,413
semantics
HTML Input Types (mar)1,412
forms
Optimal Images in HTML (ste/bui)1,411
images, backgrounds, performance, optimization
Screen Readers Support for Text Level HTML Semantics (ste/tpg)1,410
semantics, screen-readers, support
Use the Dialog Element (Reasonably) (sco)1,409
modals, accessibility
Musing Upon an “[alt]” Text Badge on Images (chr)1,408
accessibility, css
The Modern Way of Serving Images (kur)1,407
images, performance
If You Need a Link, Don’t Use a Button (tem)1,406
semantics, links, buttons, accessibility
Improve Your HTML Semantic With Pico CSS1,405
pico
Unordered Lists in Main Navigations (mat)1,404
lists, navigation, semantics
Three Attributes for Better Web Forms (ada)1,403
forms, attributes
Two Ways to Safely Break a Long Word in HTML (ami)1,402
Data URLs and Pool in Your URL (wes)1,401
data-urls
Faking Min Width on a Table Column (css)1,400
tables, css, responsive-design
Customizing HTML Form Validation (dav)1,399
forms, validation
How to Build Great HTML Form Controls (aus/fre)1,398
how-tos, forms
7 Required Steps to Secure Your Iframes Security1,397
iframes, security, xss, http-headers, csp
Conditional API Responses for JavaScript vs. HTML Forms (aus)1,396
javascript, forms, security, comparisons
Theme Toggles1,395
websites, theming, toggles, react
Website Accessibility (15 Best Practices) (bru)1,394
accessibility, best-practices, content, readability, captcha, images, alt-text, forms, focus, tooling
A Problem With Link Relationships (j9t)1,393
links, metadata, semantics, maintainability
Enforcing Better HTML Markup With Eleventy (mat)1,392
semantics, conformance, eleventy
A Theory of Web Relativity (alv/mat)1,391
metadata, structured-data
Building an Accessible Theme Picker With HTML, CSS, and JavaScript (fos)1,390
accessibility, css, javascript, theming, functionality
Common Nesting Issues in HTML (cit/mat)1,389
nesting
Interop 2022: End of Year Update (rac)1,388
interoperability, web-platform, browsers, css
HTML Dialog (5t3)1,387
modals
Mini-Guide to Add an Image (its/mat)1,386
images
Modern HTML as a Foundation for Progressive Enhancement (ffo/mat)1,385
progressive-enhancement
5 HTML Elements, and a Partridge in a Despair Tree (mat)1,384
semantics, accessibility
4 Ways CSS “:has()” Can Make Your HTML Forms Even Better (aus)1,383
css, selectors, forms
Get That Marquee AeStHeTiC (dni/mat)1,382
css, effects
An HTML-First Mental Model (noa/per)1,381
dom, performance
Table Like It’s 2023 (cli/mat)1,380
tables
One Day We’ll Have a Fully Customisable Select (hdv/mat)1,379
css
There Can Be Only One: Options for Building “Choose One” Fields (aar/mat)1,378
forms
Dear Developer, Your Assumptions Are Wrong (mat)1,377
Inside the Mind of a Frontend Developer: Article Layout (sha)1,376
css, layout
A Modern HTML Template (2022)1,375
templates
Meaningful Labels Using ARIA—or Not (mat)1,374
accessibility, forms, labels, aria
4 More HTML Concepts You Didn’t Know (j9t)1,373
concepts, forms, focus
Brief Note on Description List Support (aar)1,372
lists, semantics, accessibility, screen-readers, support
Reading the Meter (sup/mat)1,371
semantics, accessibility
Landmarks and Where to Put Them (kil/mat)1,370
semantics, aria, accessibility
You Don’t Need ARIA for That (den/mat)1,369
accessibility, aria
How to Transfigure Wireframes Into HTML (mat)1,368
how-tos, prototyping, conversion
HTML Semantics and Accessibility Cheat Sheet (web)1,367
cheat-sheets, semantics, accessibility
Shadow DOM and Accessibility: The Trouble With ARIA (nol)1,366
dom, shadow-dom, accessibility, aria
Newer Things to Know About Good Ol’ HTML Lists (dxn/css)1,365
lists, semantics
Upgrade Your HTML IV (j9t/fro)1,364
books, frontend-dogma, minimalism, craft, conformance
HTML Content Model Categories (rus)1,363
semantics
Lazy Loading Images in HTML (sim)1,362
performance, lazy-loading
The Shape-Shifting “a” Element (rus)1,361
links, semantics
The “label” Element (rus)1,360
labels, semantics
Page Title Conventions (ada)1,359
accessibility, seo
What Happened to Text Inputs? (hey)1,358
videos, forms
Brief Note on “aria-readonly” Support (aar)1,357
accessibility, aria, assistive-tech, support
You Don’t Need HTML (ede)1,356
websites, web-platform
A Guide to Keyboard Accessibility: HTML and CSS (its/sma)1,355
guides, accessibility, keyboard-navigation, css
Dialogs, Modality, and Popovers Seem Similar—How Are They Different? (hdv)1,354
semantics, accessibility, modals, pop-overs
Foundations: Native Versus Custom Components (tet)1,353
accessibility, fundamentals, components, comparisons
Inside the Mind of a Frontend Developer: Hero Section (sha)1,352
css
6 Steps to Improve HTML Images for Users and Developers (aus)1,351
images, performance, responsive-design
16 Rare HTML Tags You Really Should Know1,350
semantics
HTML and CSS Features, Tips for a 10× Faster Page Loading Speed1,349
css, performance, tips-and-tricks
Intro to HTML-First Frontend Frameworks1,348
introductions, frameworks
Building a Tooltip Component (arg)1,347
components, tooltips, css
The Truth Behind Implicit/Explicit Form Labels1,346
forms, labels, accessibility
Common ARIA Mistakes and How to Avoid Them (ale)1,345
accessibility, aria, mistakes
Edit Someone Else’s Website: “contenteditable” and “designMode” (aus)1,344
Introducing html.to.design (div)1,343
introductions, design, figma, plugins, browser-extensions
A Little Semantic HTML Trick for React Components1,342
react, semantics, components, tips-and-tricks
HTML 2022: 20 Additional Observations From Analyzing the Web Almanac Data (j9t)1,341
metrics, web-almanac
How to Optimize Resource Loading With the “fetchpriority” Attribute (mat/deb)1,340
how-tos, performance, optimization
Foundations: HTML Semantics (ihe/tet)1,339
accessibility, fundamentals, semantics
When Going Somewhere Does a Thing: On Links and Buttons (kil)1,338
accessibility, links, buttons, semantics
Templating in HTML (kit)1,337
javascript
GIFs Without the .gif: The Most Performant Image and Video Options Right Now (oll/css)1,336
performance, multimedia, images, gif
Named Element IDs Can Be Referenced as JavaScript Globals (css)1,335
javascript
Learn HTML (est)1,334
courses
Markup (j9t/htt)1,333
web-almanac, studies, research, metrics
Streamable HTML Fragments (dev)1,332
streaming
Two Things I Learned by Validating My HTML Again1,331
conformance, lessons
Quick Reminder: HTML5 “required” and “pattern” Are Not a Security Feature (cod)1,330
forms, security
Will Serving Real HTML Content Make a Website Faster? Let’s Experiment!1,329
studies, research, performance
A “details” Element as a Burger Menu Is Not Accessible (ger/clo)1,328
disclosure-widgets, semantics, accessibility
Brief Note on Super- and Subscript Text (aar)1,327
accessibility, support, assistive-tech
How to (Not) Make a Button1,326
how-tos, accessibility, buttons, semantics
Why the Number Input Is the Worst Input1,325
forms, validation, accessibility
Making Sense of WAI–ARIA: A Comprehensive Guide (sma)1,324
guides, accessibility, aria
Wtf Is an Island and Why Is It in My Website?1,323
frameworks, architecture, concepts
2022: 0 of the Global Top 100 Websites Use Valid HTML (j9t)1,322
css, conformance, metrics, quality, craft
The “details” and “summary” Elements, Again (sco)1,321
disclosure-widgets, accessibility
Nuclear Footnotes (mey)1,320
footnotes, css
What’s New With Forms in 2022? (oll/css)1,319
forms, javascript
Building the Main Navigation for a Website (mat)1,318
navigation, css
HTML Markup Tips for Developing Accessible Websites (low)1,317
accessibility, aria
A Content Warning Component (kit)1,316
components, css
Disabled JavaScript Turns Off Native Lazy Loading (ste)1,315
javascript, performance, lazy-loading
Accessible Lists and Tables (pop)1,314
accessibility, lists, tables
Beginner’s Guide to Lists and How to Make Them Accessible (pop)1,313
guides, lists, accessibility
Don’t Overwrite Visual Labels With “aria-label” (ash)1,312
accessibility, aria, labels
Should I Use a Button or a Link? (ash)1,311
buttons, links, semantics
Short Note on “figure” and “figcaption” (ste)1,310
accessibility
CSS Classes Considered Harmful (kei)1,309
css
TIL: You Can Access a User’s Camera With Just HTML (aus)1,308
permissions
Creative List Styling (mic)1,307
lists, css
Exploring the Underrated “output” Element1,306
Table Column Alignment With Variable Transforms (mey)1,305
css, tables, transforms, alignment
Tip: Use “fetchpriority=high” to Load Your LCP Hero Image Sooner (add)1,304
performance, web-vitals
On Ratings and Meters (lea)1,303
semantics, css
Capturing Images and Videos From the Camera of Mobile Devices Using HTML (ami)1,302
multimedia, mobile
The Infinite Marquee1,301
css, animations, effects
Making a Website Under 1 kB1,300
performance, minimalism
Ruby Styling (ri/web)1,299
ruby-markup, css
Abbreviations Suck (cfe)1,298
accessibility
“<article>” vs. “<section>”: How to Choose the Right One (sma)1,297
semantics, comparisons
Roundup of Recent Document Outline Chatter (geo/css)1,296
headings, semantics, accessibility
Subheadings, Subtitles, Alternative Titles, and Taglines in HTML (ste/tpg)1,295
semantics, headings, microcontent, accessibility
Abbreviations Can Be Problematic (tem)1,294
accessibility
Minimal Social Markup (j9t)1,293
social-media, open-graph, minimalism
What Is the Best Way to Mark Up an Exclusive Button Group? (lea)1,292
semantics, accessibility, aria
What You Need to Know About ARIA and How to Fix Common Mistakes (pop)1,291
accessibility, aria, mistakes
Avoiding “<img>” Layout Shifts: “aspect-ratio” vs. “width” and “height” Attributes (jaf)1,290
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,289
semantics, accessibility
Two Levels of Customising “<selectmenu>” (hdv)1,288
accessibility
Best Practices for Images1,287
images, best-practices
Farewell to HTML5Rocks1,286
community, history
What the Hell Is “<!DOCTYPE html>”?1,285
doctypes
Are You Sure That’s a Number Input? (kil)1,284
My Wonderful HTML Email Workflow (jos)1,283
mjml, markdown, mdx, email, processes
HTML Cheatsheet1,282
examples, cheat-sheets
Write HTML Right1,281
optimization
Level Up Your Link Previews in Slack (whi)1,280
social-media, open-graph, links, slack
8 Shocking HTML Tips You Probably Don’t Know About1,279
tips-and-tricks
The “Form” Element Created the Modern Web—Was It a Big Mistake? (wir)1,278
forms, history, mistakes
A Perfect Table of Contents With HTML and CSS (nza/css)1,277
css
Why Are Iframe Titles Important for Accessibility?1,276
accessibility, iframes, writing
HTML Cheat Sheet: A Quick Reference Guide for HTML Developers1,275
guides, semantics, examples, cheat-sheets
Making Disabled Buttons More Inclusive (san/css)1,274
forms, buttons, focus, aria, attributes, accessibility
Conditionally Loading CSS or Any Resource Using Media Queries (ami)1,273
media-queries, performance
Building a Button Component (arg)1,272
components, css, javascript, buttons
How the HTML “lang” Attribute Helps Accessibility1,271
accessibility, attributes, localization
Don’t Fight the Browser Preload Scanner (mal)1,270
browsers, parsing, performance
Divs Are Bad! (mat)1,269
semantics
XHTML Syntax Is Still Worth Using (tem)1,268
xhtml
Learn HTML [and] CSS (jad)1,267
websites, courses, css
What’s Your Heading? (col)1,266
accessibility, headings, semantics
Lost in Translation (mat/btc)1,265
videos, design, accessibility, css
Please, Stop Disabling Zoom (mat)1,264
accessibility, zooming
How to Use Videos With Alpha Transparency on the Web (ben)1,263
how-tos, multimedia, transparency+opacity
Under-Engineered Multi-Selects (aar)1,262
accessibility, aria
Foundations: Lists (tin/tet)1,261
accessibility, fundamentals, lists
Common Frontend Interview Questions I’ve Been Asked1,260
interviewing, javascript
The CSS Art Paradox (j9t)1,259
css, art, quality
Introducing “inert”1,258
introductions, attributes, accessibility, keyboard-navigation
Non-Interactive Elements With the “inert” Attribute (web)1,257
attributes, semantics
Plain Old Semantic HTML: A Perfect Basis for Accessibility1,256
accessibility, semantics
How Web Browsers Work: Parsing the HTML1,255
browsers, parsing
Progressive Enhancement and HTML Forms: Use “FormData” (bra)1,254
forms, progressive-enhancement
Does Valid and Semantic HTML Still Matter? (5t3+)1,253
podcasts, semantics, conformance
Building a Dialog Component (arg)1,252
components, modals, css, javascript
Those HTML Elements You Never Use1,251
semantics
How to Turn HTML Webpage Into an Image?1,250
how-tos, images, conversion
Designing Better Breadcrumbs (vit/sma)1,249
usability, navigation, breadcrumbs
12 Years Beyond a HTML Joke (ste)1,248
semantics
Alternative Text (Alt Text) (pop)1,247
accessibility, images, writing, alt-text
HTML Is All You Need to Make a Website (whi)1,246
“aria-labelledby” Usage Notes (ste)1,245
accessibility, aria, labels
Accessible Cards (kit)1,244
accessibility, css
How to Match HTML Elements With an Indeterminate State (ste)1,243
how-tos, css, selectors
HTML-Only Keyboard Shortcuts (ami)1,242
accessibility, keyboard-navigation, keyboard-shortcuts
Picture Perfect Images With the Modern “<img>” Element (add)1,241
images, performance, web-vitals
Those HTML Attributes You Never Use (lou/sma)1,240
attributes
HTML Semantics (cfe)1,239
semantics
Write HTML, the HTML Way (Not the XHTML Way) (j9t/css)1,238
xhtml, optimization
The Impact That High Quality Mark-Up Can Have on Accessibility, Performance, and Discoverability1,237
videos, accessibility, performance
All HTML and CSS Cheatsheets in One Place1,236
css, cheat-sheets
Building a Loading Bar Component (arg)1,235
components, css, javascript
How to Automatically Size a Textarea Based on Its [Text] Using Vanilla JavaScript (cfe)1,234
how-tos, javascript
The Weirdly Obscure Art of Streamed HTML1,233
streaming, performance
Aligning Content in Different Wrappers (sha)1,232
css, alignment
It Needs to Map Back to a Role (eri)1,231
accessibility, aria, semantics
A Look at the Dialog Element’s Super Powers (ste)1,230
modals, javascript
Creating Native Web Components (cod)1,229
web-components, javascript
It’s Always Been You, Canvas2D1,228
css, canvas, javascript
HTML Tips and Tricks1,227
tips-and-tricks
(Not So) Short Note on Being Owned (ste)1,226
aria, accessibility
Web Component Pseudo-Classes and Pseudo-Elements Are Easier Than You Think (css)1,225
css, web-components
Foundations: Headings (ihe/tet)1,224
accessibility, fundamentals, headings, semantics
HTML Comments Work in JavaScript Too1,223
javascript, comments
Support for Marking Radio Buttons Required, Invalid (aar)1,222
accessibility
Column Headers and Browser Support (aar)1,221
accessibility, semantics
There Is No Character Limit for “Alt Text” (yat)1,220
accessibility, alt-text, images
How to Create a Search Page for a Static Website With Vanilla JS (cfe)1,219
how-tos, functionality, search, javascript
Why Radio Buttons Are Called Radio Buttons in UIs? (ami)1,218
semantics, naming
MHTML in Chromium1,217
browsers
Replace JavaScript Dialogs With the New HTML Dialog Element (sto/css)1,216
modals, semantics
Introducing the Dialog Element (web)1,215
introductions, modals
HTML Cheat Sheet—HTML Elements List Reference (fre)1,214
semantics, examples, cheat-sheets
24 Lesser-Known HTML Attributes You May Want to Use1,213
attributes
How to Convert Markdown to HTML (red)1,212
how-tos, markdown, conversion
More to Give Than Just the Div: Semantics and How to Get Them Right (hdv)1,211
semantics, accessibility
Context-Aware Web Components Are Easier Than You Think (css)1,210
web-components, javascript
Div Divisiveness (sco)1,209
semantics
Find HTML Parsing Errors (pat/dev)1,208
browsers, dev-tools, parsing, quality
On the Peculiarities of Counting the Number of HTML Elements (j9t)1,207
Boolean Attributes in HTML and ARIA: What’s the Difference? (hdv)1,206
attributes, aria
Alt Tag Emptiness (ste)1,205
accessibility, images, alt-text, aria
HTML Is General, ARIA Is Specific (dav)1,204
aria
Labeling the Point: Scenarios of Label Misuse in WCAG (tpg)1,203
accessibility, forms, labels, wcag
Accessible Heading Structure (ria)1,202
accessibility, headings
Faster Websites by Using Less HTML (j9t)1,201
cross-posts, performance, optimization, minimalism
Container Queries (5t3)1,200
css, container-queries
Form Autocomplete (ben/5t3)1,199
forms
5 Common Misconceptions About WAI–ARIA and Accessibility1,198
accessibility, aria
How to Define Your Relationship to Sites You Link To (ste)1,197
how-tos, links, semantics, seo
HTML Cheat Sheet1,196
semantics, examples, cheat-sheets
Image Display Elements (5t3)1,195
images, responsive-design
Ultimate HTML Cheatsheet1,194
cheat-sheets
4 HTML Concepts You Didn’t Know (j9t)1,193
concepts, tables
CSS Can Help Improve Your HTML!? Buttons and Links1,192
css, buttons, links, accessibility
Details/Summary (5t3)1,191
semantics, disclosure-widgets
Embrace the Platform (bra/css)1,190
css, javascript, web-platform
How Not to Create a Button (eev)1,189
buttons, accessibility
Defer Non-Critical Resources (per)1,188
performance
Markup (htt)1,187
web-almanac, studies, research, metrics
“aria-label” Is Not Always the Answer (eev)1,186
aria, accessibility
On Yak Shaving and “<md-block>”, a New HTML Element for Markdown (lea)1,185
web-components, markdown
Control Layout in a Multi-Directional Website (css)1,184
internationalization, css
The 6 Ways of Writing HTML (and Their Combinations) (j9t)1,183
Dear HTML Element1,182
How to Make Blob Menu Using HTML, CSS, and JavaScript1,181
how-tos, css, javascript
Generate a Pull Request of Static Content With a Simple HTML Form (css)1,180
github
Get Your “Head” Straight (css/btc)1,179
videos, performance
Semantics and How to Get Them Right (hdv/btc)1,178
videos, semantics, accessibility
Detecting Specific Text Input With HTML and CSS (chr/css)1,177
css
Debugging HTML: Accessibility (mat/mat)1,176
accessibility, debugging
Designing a Reorderable List Component1,175
lists, components, css
In Defence of Dialog1,174
modals
Building Real-Life Components: Facebook Messenger’s Chat Bubble (sha)1,173
components, css
Learn Forms1,172
courses, forms
Accessible Toggles (mic)1,171
accessibility, toggles, javascript
HTMLoween—HTML, JS, and CSS to Make Your Blood Boil1,170
css, javascript
Indecisive Skip Links and Their Targets—the Renaissance of the “<hr>” Element1,169
accessibility, skip-links