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