The Siren Song of “ariaNotify()” (wil /css )Jun 17, 2026 2,149 javascript , aria , notifications , attributes , jaws , nvda , voiceover , screen-readers , accessibility “headingoffset” Is Not the Document Outline Algorithm (aar )Jun 11, 2026 2,148 attributes , headings How Building an HTML-First Site Doubled Our Users Overnight (moh )Jun 10, 2026 2,147 web-components , validation , traffic , case-studies WWDC26: Rediscover the HTML “select” Element Jun 8, 2026 2,146 videos , forms , css Another Stab at the Perfect CSS Pie Chart… Sans JavaScript (vil /css )Jun 4, 2026 2,145 css Astro: HTML First, JavaScript When You Need It (jad )Jun 3, 2026 2,144 astro , javascript Context-Aware Headings in HTML (mat )Jun 3, 2026 2,143 headings , attributes Gary Illyes: The Web’s JavaScript Mess Is an AI Agent Nightmare (ppc )Jun 1, 2026 2,142 ai , ai-agents , javascript , rag , llmstxt Re: Accessibility Question: Is Nesting Interactive Elements Bad? (aar )May 29, 2026 2,141 accessibility , nesting Accessible (I Think) Split-Cell Table Headers (mey )May 28, 2026 2,140 css , tables Managing Anchor Associations With Data Attributes and Advanced “attr()” (dxn /fro )May 27, 2026 2,139 anchor-positioning , custom-data , css , functions , attributes Not Every Form Field Needs to Be in a Fieldset (jea )May 24, 2026 2,138 forms , design-systems , accessibility Don’t Put “aria-label” on Generic Elements Like Divs (mat )May 22, 2026 2,137 attributes , aria , screen-readers , support , accessibility What’s New in Web UI (una +)May 22, 2026 2,136 videos , web-platform , user-experience , principles , canvas , css , google Accessible by Design: HTML, CSS, Javascript, and ARIA Techniques That Scale May 21, 2026 2,135 videos , accessibility , css , javascript , aria Declarative Partial Updates (tun +)May 19, 2026 2,134 apis , chrome , google , browsers Introducing the HTML-in-Canvas API Origin Trial (nma )May 19, 2026 2,133 introductions , canvas , apis , origin-trials , chrome , google , browsers A Few Ways of Specifying Per-Theme Colours in Only CSS May 16, 2026 2,132 css , dark-mode , colors , techniques hihtml (j9t )May 13, 2026 2,131 packages , npm , conformance , links , link-rot , minification , html-minifier , optimization , quality You Don’t Know HTML Lists May 13, 2026 2,130 lists , semantics AI and HTML: Validating, Omitting Optional Code, and Minifying as Token Optimization (j9t )May 12, 2026 2,129 ai , token-optimization , conformance , minimalism , minification , optimization Install Web Apps With the New HTML “install” Element (pat )May 12, 2026 2,128 web-apps , installing , origin-trials , chromium Not All Hidden Content Is Equal: How Different Hiding Methods Impact Accessibility May 12, 2026 2,127 accessibility , hiding , css , aria , attributes , techniques , comparisons In-n-Out-Styling With Chris Coyier (chr /sma )May 11, 2026 2,126 videos , css Out With the JS, in With the HTML (jim )May 10, 2026 2,125 javascript , refactoring The “<selectmenu>” Element: Stop Using JavaScript Dropdown Libraries May 10, 2026 2,124 forms , javascript , css Using Claude Code: The Unreasonable Effectiveness of HTML May 8, 2026 2,123 claude , anthropic , ai , efficiency HTML.md (j9t )May 6, 2026 2,122 documentation , ai What’s !important #10: HTML-in-Canvas, Hex Maps, E-Ink Optimization, and More (dxn /css )May 1, 2026 2,121 css , retrospectives , canvas , apis , images , web-platform ARIA Roles and Web Accessibility: A Quick Guide (lev )Apr 30, 2026 2,120 guides , accessibility , aria , attributes Hard to Read One-Liners (kri )Apr 28, 2026 2,119 css , collaboration The End of Responsive Images (wil /pic )Apr 23, 2026 2,118 images , responsive-design Visual Validation Feedback for Form Fields (aar )Apr 22, 2026 2,117 forms , validation , javascript The Web Is Fun Again: First Experiments With HTML in Canvas (ami /fro )Apr 21, 2026 2,116 experiments , canvas , javascript Multi-Level Navigation: The Challenge of Identifying Parent Sections for Screen Readers (ele )Apr 21, 2026 2,115 navigation , aria , screen-readers , accessibility A11y 101: 3.1.1 Language of Page (nat )Apr 20, 2026 2,114 introductions , accessibility , wcag , localization My Thoughts on the “focusgroup” Attribute Proposal (stv )Apr 20, 2026 2,113 forms , attributes Video as Code: A Deep Dive Into HeyGen’s Hyperframes Apr 19, 2026 2,112 deep-dives , multimedia , css , tooling The Community Has Spoken, Now We Need Browsers Vendors to Help: A “<rangegroup>” Update (uti )Apr 14, 2026 2,111 community , browsers The Radio State Machine (ami /css )Apr 14, 2026 2,110 css , state-management Why AI Sucks at Front End (arg )Apr 12, 2026 2,109 ai , css How to Use Standard HTML Video and Audio Lazy-Loading on the Web Today (sco )Apr 7, 2026 2,108 how-tos , multimedia , lazy-loading , performance Old Advice: Hiding Content Has No Effect on Accessible Name or Description Calculation (ste )Apr 7, 2026 2,107 accessibility , hiding , aria Making Emojis and Icons Screen Reader Accessible (pop )Apr 1, 2026 2,106 emoji , icons , images , accessibility , screen-readers Semantic HTML Just Might Make Your CSS Less Fragile (sch )Mar 30, 2026 2,105 css , semantics , resilience There’s No Need to Include “Navigation” in Your Navigation Labels (tem )Mar 30, 2026 2,104 accessibility , labels , navigation Mike Smith Fireside (ste )Mar 29, 2026 2,103 videos , interviews , standards , accessibility , community Headings the Right Way: Site Building Tips for Accessible Page Content (dru )Mar 29, 2026 2,102 videos , headings , accessibility Bad Example: Timesheet Submit Button (rac )Mar 27, 2026 2,101 buttons , accessibility Tooltips That Work for Everyone (ele )Mar 25, 2026 2,100 tooltips , accessibility , aria , attributes , screen-readers , nvda , jaws Quick Tip: Don’t Use “<abbr>” (nat )Mar 20, 2026 2,099 tips-and-tricks , screen-readers , support , accessibility Astro: How to Set Up More Powerful HTML Minification (in 31 Seconds) (j9t )Mar 17, 2026 2,098 how-tos , astro , html-minifier , minification , optimization New Bookmarklet—Structure Revealer (llo )Mar 13, 2026 2,097 bookmarklets , accessibility Abusing Customizable Selects (pat /css )Mar 11, 2026 2,096 forms , css , functions Testing Browser Support for “focusgroup” (ada )Mar 9, 2026 2,095 attributes , focus , javascript The Enforced Accessibility of the “geolocation” Element (chr /fro )Mar 9, 2026 2,094 geolocation , accessibility Request for Developer Feedback: “focusgroup” (jac )Mar 5, 2026 2,093 attributes , chromium , browsers The Different Ways to Select “<html>” in CSS (dxn /css )Mar 5, 2026 2,092 css , selectors You Don’t Know HTML Tables Mar 5, 2026 2,091 tables , javascript Your Skip Link Targets May Not Need “tabindex=-1” to Work Properly (mat )Mar 4, 2026 2,090 skip-links , attributes , accessibility 1995: From Batman Forever’s Cinematic Design to HTML Tables (ric )Mar 3, 2026 2,089 web , history , design , netscape , mosaic , browsers , tables , layout , wysiwyg , code-editors Figcaptions Versus Alt Text (tem )Feb 28, 2026 2,088 images , alt-text , accessibility , comparisons You Can Use Newline Characters in URLs (lem )Feb 28, 2026 2,087 urls , data-urls , links , attributes “role=presentation” Is No Alternative for “aria-hidden=true” (mat )Feb 27, 2026 2,086 accessibility , aria , attributes , comparisons When Is a Link Not a Link? (dec )Feb 25, 2026 2,085 links , semantics , accessibility Matt May Speaks (mat +)Feb 23, 2026 2,084 videos , interviews , accessibility , standards “aria-haspopup” Might Not Do What You Think It Does (mat )Feb 23, 2026 2,083 aria , attributes , navigation , accessibility Standard HTML Video and Audio Lazy-Loading Is Coming (sco )Feb 22, 2026 2,082 multimedia , lazy-loading , standards , performance Native HTML Components Don’t Guarantee Good UX (ada )Feb 22, 2026 2,081 components , user-experience The Problem With HTML Reset Buttons (ada )Feb 22, 2026 2,080 buttons , user-experience An Official* Logo for HTML (zac )Feb 20, 2026 2,079 Everything You Never Wanted to Know About “visually-hidden” (dbu )Feb 20, 2026 2,078 css , hiding , accessibility Notes on Relying on the ARIA Authoring Practices Guide (ste )Feb 19, 2026 2,077 aria , accessibility Mastering Dialog Accessibility Feb 12, 2026 2,076 accessibility , modals , aria Virtual Scrolling for Billions of Rows—Techniques From HighTable (sev )Feb 12, 2026 2,075 tables , scrolling , performance , react You Might Not Need “role="presentation"” (stv /pic )Feb 12, 2026 2,074 aria , accessibility You Know What? Just Don’t Split Words Into Letters (aar )Feb 10, 2026 2,073 accessibility , screen-readers , support Trying to Make the Perfect Pie Chart in CSS (mon /css )Feb 9, 2026 2,072 css How to Improve Your HTML Game (j9t )Feb 5, 2026 2,071 how-tos , conformance , learning , career Introduction to the New HTML Element “<geolocation>” (mat )Feb 4, 2026 2,070 introductions , geolocation Accessible Inline Collapsible (eri )Feb 2, 2026 2,069 accessibility , disclosure-widgets Repeatable Form Fields Made Simple (aar )Jan 31, 2026 2,068 forms , web-components More Invoker Commands, and More Reasons Not to Use JavaScript Please (paw )Jan 27, 2026 2,067 examples SPAs Are a Performance Dead End (yeg )Jan 25, 2026 2,066 single-page-apps , performance Barriers From Links With ARIA (aar )Jan 22, 2026 2,065 accessibility , links , aria I Learned the First Rule of ARIA the Hard Way (css )Jan 21, 2026 2,064 accessibility , aria , semantics Faking a Fieldset-Legend (tyl /clo )Jan 20, 2026 2,063 forms , css Accessible Faux-Nested Interactive Controls (eri /pic )Jan 15, 2026 2,062 accessibility , conformance , nesting SEO (htt )Jan 15, 2026 2,061 web-almanac , studies , research , metrics , seo , robotstxt , llmstxt , links , content , structured-data , amp , internationalization The Incredible Overcomplexity of the Shadcn Radio Button (pau )Jan 15, 2026 2,060 forms , shadcn , complexity EPUB and HTML—Survey Results and Next Steps (rei /w3c )Jan 14, 2026 2,059 surveys , epub So You Think Your Website Is Doing Great (cit )Jan 14, 2026 2,058 javascript , css , quality ARIA Roles Can Remove Their Children’s Semantics (ste )Jan 13, 2026 2,057 aria , semantics , accessibility Introducing the “<geolocation>” HTML Element (tom +)Jan 13, 2026 2,056 introductions , geolocation , chrome , google , browsers A Polyfill for the HTML “switch” Element (tom )Jan 12, 2026 2,055 forms , polyfills What Is the Minimum Markup Needed to Create a Modal? (rus )Jan 10, 2026 2,054 modals , minimalism , css , accessibility Very Good Components (bee )Jan 8, 2026 2,053 websites , components How Browsers Work (dmy )Jan 4, 2026 2,052 websites , guides , browsers , urls , http , tcp , dom How Can You Tell What’s Allowed Inside Each HTML Element? (rus )Dec 31, 2025 2,051 conformance HTML Content Categories (rus )Dec 30, 2025 2,050 semantics The Final Nail in the HTML5 Document Outline Coffin (tem )Dec 29, 2025 2,049 headings , accessibility Opening and Closing Dialogs Without JavaScript Using HTML Invoker Commands (sch )Dec 29, 2025 2,048 modals Revisiting HTML Streaming for Modern Web Performance (per )Dec 26, 2025 2,047 performance , streaming The Three Semantics of HTML (mat )Dec 24, 2025 2,046 semantics For the Love of “<details>” (dev /mat )Dec 23, 2025 2,045 disclosure-widgets 2026 Predictions: The Next Big Shifts in Web Accessibility (web )Dec 22, 2025 2,044 accessibility , outlooks , ai , wcag The HTML Elements Time Forgot (val /mat )Dec 22, 2025 2,043 history The Two Most Important Tools for HTML Developers Dec 22, 2025 2,042 tooling , conformance , minification , html-minifier , htmlnano , swc Why “role="button"” on a “<button>” Does Nothing (rus )Dec 22, 2025 2,041 buttons , attributes , aria Styling by Language: Using the “lang” Attribute for Multilingual Design (mat )Dec 21, 2025 2,040 internationalization , css Did You Know Some ARIA Roles Remove Child Semantics? (rus )Dec 21, 2025 2,039 aria , semantics , accessibility The Many Lives of the Page Title (kat /mat )Dec 20, 2025 2,038 user-experience , accessibility , wcag Accessibility Is Personal (css )Dec 19, 2025 2,037 accessibility Semantics Beyond the Tag Name (kno /mat )Dec 19, 2025 2,036 attributes , aria , semantics , accessibility Targeting by Reference in the Shadow DOM (mey )Dec 19, 2025 2,035 shadow-dom , javascript The Anatomy of an Accessible Text Field (ink )Dec 19, 2025 2,034 forms , accessibility , labels Forms Are a Badly Designed Part of HTML (jen /mat )Dec 18, 2025 2,033 forms , standards Don’t Leave the Screen Reader Hungry (ger /mat )Dec 17, 2025 2,032 emoji , screen-readers , accessibility How “aria-labelledby” Really Works (rus )Dec 17, 2025 2,031 accessibility , aria , attributes Giving Pages a Clear Shape by Using Headings (mat )Dec 16, 2025 2,030 headings State of HTML 2025 [Results] (sac /dev )Dec 16, 2025 2,029 surveys , metrics Does Chrome Get the “<header>” Element Wrong? (rus )Dec 16, 2025 2,028 aria , chrome , google , browsers I Ported JustHTML From Python to JavaScript With Codex CLI and GPT-5.2 in 4.5 Hours (sim )Dec 15, 2025 2,027 migrating , ai , python , javascript , tooling , parsing Them’s the Breaks (tyl /mat )Dec 15, 2025 2,026 The “<time>” Element Should Actually Do Something (nol )Dec 14, 2025 2,025 time , semantics Changes in the World of HTML Minifiers (apo )Dec 13, 2025 2,024 tooling , minification , html-minifier Hell Is Other People’s Markup (llo /mat )Dec 13, 2025 2,023 auditing , tooling Why We Teach Our Students Progressive Enhancement (cyd )Dec 13, 2025 2,022 progressive-enhancement , css , javascript , training How HTML Changes in EPUB (rob /mat )Dec 11, 2025 2,021 epub , standards A11y Freedom Beaver (ste /mat )Dec 10, 2025 2,020 accessibility , aria Useful Patterns for Building HTML Tools (sim )Dec 10, 2025 2,019 ai , tooling Discover Dialog (sar /mat )Dec 9, 2025 2,018 modals , javascript , css That Time I Tried Explaining HTML and CSS to My 5-Year Old Niece (css )Dec 8, 2025 2,017 css , learning What’s Wrong With This HTML, and Is It Valid? (pat /mat )Dec 8, 2025 2,016 standards , conformance , web-platform Comparing HTML Minifiers (j9t )Dec 8, 2025 2,015 minification , tooling , html-minifier , htmlnano , metrics , comparisons Controlling Dialogs and Popovers With the Invoker Commands API (sta /mat )Dec 7, 2025 2,014 modals , pop-overs , apis , attributes Accessible by Design: The Role of the “lang” Attribute (col /mat )Dec 6, 2025 2,013 accessibility , internationalization , attributes , metrics NoLoJS: Reducing the JS Workload With HTML and CSS (aar /per )Dec 6, 2025 2,012 disclosure-widgets , forms , modals , pop-overs , navigation , scrolling , positioning IDREFs: What They Are and How to Use Them (kil /mat )Dec 5, 2025 2,011 forms , aria , accessibility Referencing HTML Elements Inside Shadow DOM (meh /mat )Dec 4, 2025 2,010 shadow-dom , web-components HTML Semantics: The Short Descriptions of All 113 Elements (j9t )Dec 3, 2025 2,009 semantics , overviews Exploring Large HTML Documents on the Web (per )Dec 2, 2025 2,008 performance , metrics Using the Ancient Evils for Debugging (bol /mat )Dec 2, 2025 2,007 debugging How Modern Browsers Work (add )Nov 29, 2025 2,006 browsers , chromium , network , parsing , painting , rendering , javascript-engines , v8 , memory , modules , javascript , css Eleventy: How to Set Up Effective HTML Minification (in 24 Seconds) (j9t )Nov 28, 2025 2,005 how-tos , eleventy , html-minifier , minification , optimization What Are Invokers? Interactivity Without JavaScript (tol /syn )Nov 26, 2025 2,004 videos , javascript , pop-overs Testing Methods: Page Titled (dec )Nov 19, 2025 2,003 accessibility , wcag , testing A Complete Guide to the HTML Number Input (oll )Nov 14, 2025 2,002 guides , attributes , forms “::details-content”: Style Expandable Content Without Wrapper Divs (tre )Nov 11, 2025 2,001 disclosure-widgets , css Why Headings Are Important in HTML: Structure, Accessibility, and SEO Nov 11, 2025 2,000 headings , accessibility , seo Headings: Semantics, Fluidity, and Styling—Oh My! (geo /css )Nov 10, 2025 1,999 headings , css Link vs. Button: Choosing the Right Element for the Right Job (tpg )Nov 10, 2025 1,998 links , buttons , accessibility , wcag , comparisons Tailwind CSS Won the War… but We’re the Losers Nov 7, 2025 1,997 tailwind , css , web-platform Explaining the Accessible Benefits of Using Semantic HTML Elements (geo /css )Nov 6, 2025 1,996 semantics , accessibility Now Available: “On Web Development II”! (j9t )Nov 6, 2025 1,995 books , css , engineering-management , maintainability , quality Just Use a Button (cfe )Oct 31, 2025 1,994 buttons , semantics HTML Minifier: A 12-Year Journey Building and Maintaining an Open Source Tool Oct 30, 2025 1,993 minification , tooling , windows , asp-net , retrospectives ChatGPT Sez Build With Semantics First (ste )Oct 28, 2025 1,992 chatgpt , chatgpt-atlas , ai , openai , browsers , semantics , accessibility Parenthetical Asidenotes (mey )Oct 28, 2025 1,991 css Don’t Forget These Tags to Make HTML Work Like You Expect (jim )Oct 26, 2025 1,990 What’s an Interactive Element? (mat )Oct 24, 2025 1,989 focus , concepts Challenging the Idea of “Optional HTML” (mar )Oct 22, 2025 1,988 guest-posts , minimalism Links and Anchors: Ancient HTML and JS Magic in Your Browser (cod /wea )Oct 21, 2025 1,987 css , javascript , links What State ARIA In? (tpg )Oct 20, 2025 1,986 aria , accessibility Headers, Headings, and Titles (tem )Oct 17, 2025 1,985 headings , comparisons , terminology Implicit Labels Aren’t (cfe )Oct 17, 2025 1,984 forms , labels A Look Into Customizable HTML “select” Elements Oct 15, 2025 1,983 forms , css Page Headings Don’t Belong in the Header (tem )Oct 15, 2025 1,982 headings , skip-links , accessibility Tables: Beyond Rows and Columns (tpg )Oct 13, 2025 1,981 accessibility , wcag , tables , semantics , jaws , nvda , screen-readers HTML “dialog”: Getting Accessibility and UX Right (jar )Oct 13, 2025 1,980 modals , scrolling , accessibility , user-experience HTML—the Most Difficult Programming Language in the World (j9t )Oct 9, 2025 1,979 programming , conformance , professionalism Numbers That Fall (Scroll-Driven Animations and Sibling Index) (chr /fro )Oct 7, 2025 1,978 css , animations , scrolling , effects When to Use Modal vs. Dialog Components (a11 )Oct 7, 2025 1,977 modals , aria , accessibility Lowriders and Websites (aaa )Oct 6, 2025 1,976 css , craft Rethinking Cookie Dialogs (nat )Oct 6, 2025 1,975 accessibility , disclosure-widgets , cookies , consent-management A Progressive Enhancement Challenge (chr /fro )Oct 3, 2025 1,974 progressive-enhancement , javascript , feature-detection , support How to Optimize Viewport for Mobile for Faster Interactions (deb )Oct 1, 2025 1,973 how-tos , viewport , mobile , performance , optimization Understanding the Removal of 4.1.1 Parsing in WCAG 2.2 (tpg )Oct 1, 2025 1,972 accessibility , wcag , conformance HTML’s Best Kept Secret: The “<output>” Tag (den )Oct 1, 2025 1,971 Let’s Play Accordion With the HTML “details” Element (ale )Sep 27, 2025 1,970 disclosure-widgets , accordions Creating a Truly Accessible Flip Card (sib /tpg )Sep 24, 2025 1,969 css , javascript , accessibility Web Development for Beginners: Creating Web Pages via HTML (rau )Sep 23, 2025 1,968 fundamentals , urls , servers , forms The “picture” Element (kev )Sep 18, 2025 1,967 A Quick Primer on Accessible Pagination (kar )Sep 17, 2025 1,966 introductions , accessibility , pagination , css , assistive-tech “aria-label” or “title”? Screen Reader Behaviour Explained (a11 )Sep 15, 2025 1,965 attributes , accessibility , screen-readers Navigating the World of Web Accessibility With Sara Soueidan (sar +)Sep 12, 2025 1,964 videos , interviews , accessibility , wcag , aria , css 2025: 0 of the Global Top 200 Websites Use Valid HTML (j9t )Sep 10, 2025 1,963 conformance , metrics , quality , craft Baby Steps Accessibility—Page Titles (dec )Sep 10, 2025 1,962 microcontent , best-practices , accessibility Just Use HTML (cfe )Sep 10, 2025 1,961 javascript Why Moving Away From SPAs Improves Usability, Accessibility, and SEO (inn )Sep 8, 2025 1,960 single-page-apps , usability , accessibility , seo , semantics Screen Reader HTML Support—Lookup (ste )Sep 7, 2025 1,959 screen-readers , accessibility , support , overviews Your Images Are (Probably) Oversized Sep 5, 2025 1,958 images , pixel-density Why Did I Ever Abandon HTML/CSS? (syl )Sep 2, 2025 1,957 css Tricks to Write HTML and CSS 10× Faster (jay )Aug 29, 2025 1,956 css , efficiency , tips-and-tricks You No Longer Need JavaScript (reb )Aug 28, 2025 1,955 javascript , css , examples Opening a “details” Element From the URL (chr /fro )Aug 26, 2025 1,954 disclosure-widgets , urls Hack to the Future—Frontend (the )Aug 26, 2025 1,953 history , css , javascript , design , layout , flash , image-replacement , libraries , frameworks , hacks , xhtml , tooling , testing , outlooks How to Create an Accessible Table With Clickable Rows (ale )Aug 25, 2025 1,952 how-tos , tables , accessibility Design Hacks From the Pre-CSS Era (den /hac )Aug 22, 2025 1,951 tables , layout , hacks , history A Proposal for Inline LLM Instructions in HTML Based on llms.txt (ind )Aug 20, 2025 1,950 ai , llmstxt The First Rule of ARIA (nat )Aug 18, 2025 1,949 accessibility , aria , principles Covering “hidden=until-found” (geo /css )Aug 15, 2025 1,948 hiding 5 Heading Accessibility Issues to Avoid (pop )Aug 11, 2025 1,947 accessibility , headings A Progressive Complexity Manifesto (che )Aug 10, 2025 1,946 manifestos , complexity , web-apps , htmx , javascript , web-components , frameworks , principles HTML Popovers Shown on Interest Should Be Accessible on Mobile Devices (uti )Aug 7, 2025 1,945 pop-overs , mobile , usability HTML Is Dead, Long Live HTML (unc )Aug 6, 2025 1,944 css , dom , standards , metrics When HTML Speaks Clearly Aug 6, 2025 1,943 accessibility , conformance , semantics A Few Things About the Anchor Element’s “href” You Might Not Have Known (jim )Aug 3, 2025 1,942 attributes , links , data-urls More Than Just Text: The Real Power of Labels (tpg )Jul 31, 2025 1,941 accessibility , labels , forms HTML-First, Framework-Second: Is JavaScript Finally Growing Up? Jul 29, 2025 1,940 javascript , frameworks Web Components: Working With Shadow DOM (sma )Jul 28, 2025 1,939 web-components , shadow-dom , dom The “figcaption” Problem (chr /fro )Jul 24, 2025 1,938 css Why and How to Write Minimal and Valid HTML, a Link Guide (j9t )Jul 24, 2025 1,937 minimalism , conformance , how-tos , guides , link-lists State of HTML 2025 Now Open (lea )Jul 22, 2025 1,936 surveys How Semantics and ARIA Attributes Support Accessible Design (tpg )Jul 22, 2025 1,935 accessibility , semantics , aria , attributes Super Short Note: Placeholder Perfidy (ste )Jul 21, 2025 1,934 accessibility , placeholders Why Semantic HTML Still Matters (jon )Jul 21, 2025 1,933 semantics A Label and a Name Walk Into a Bar (ste )Jul 14, 2025 1,932 accessibility , labels , concepts , examples Why I’m Writing Pure HTML and CSS in 2025 Jul 14, 2025 1,931 css Screen Reader HTML Support Tables (ste /tet )Jul 10, 2025 1,930 support , screen-readers , jaws , nvda HTML Minifier Next (a Maintained Fork of HTML Minifier) (j9t )Jul 9, 2025 1,929 html-minifier , minification , optimization , tooling HTML Day 2025 (htm )Jul 7, 2025 1,928 awareness-days What Is “popover=hint”? (una )Jul 7, 2025 1,927 attributes , pop-overs Shadow DOM: The Ultimate Solution for Embedding Third-Party HTML Without CSS Conflicts Jul 2, 2025 1,926 shadow-dom , dom , css Custom Select (That Comes Up From the Bottom on Mobile) (chr /fro )Jul 1, 2025 1,925 forms , css , animations , progressive-enhancement , mobile Tabindex: What It Is, How It Works, and When to Use It (pop )Jul 1, 2025 1,924 focus , keyboard-navigation , accessibility Google: Many Top Sites Have Invalid HTML and Still Rank (mat /sea )Jun 30, 2025 1,923 google , conformance , quality , seo A Step Into the Spatial Web: The HTML Model Element in Apple Vision Pro (zac /web )Jun 26, 2025 1,922 spatial-web , apple , xr The Mythical Magical Button (cri )Jun 24, 2025 1,921 buttons , css , custom-properties , custom-data Know Your HTML (Yes, TSX Included) (hel )Jun 23, 2025 1,920 semantics , accessibility CSS Cascade Layers vs. BEM vs. Utility Classes: Specificity Control (sma )Jun 19, 2025 1,919 css , cascade , bem , presentational-html Selfish Reasons for Building Accessible Uis (nol )Jun 16, 2025 1,918 accessibility , debugging , testing What I Wish Someone Told Me When I Was Getting Into ARIA (eri /sma )Jun 16, 2025 1,917 accessibility , aria , assistive-tech , support Having “figure” Match Width of Contained Image (jef )Jun 13, 2025 1,916 css , images Escaping “<” and “>” in Attributes—How It Helps Protect Against Mutation XSS (sec )Jun 12, 2025 1,915 attributes , security , xss , escaping , chrome , google , browsers Why Visual Website Builders Didn’t Take Off (whi )Jun 12, 2025 1,914 videos , code-editors , wysiwyg , history HTML Spec Change: Escaping “<” and “>” in Attributes (sec )Jun 12, 2025 1,913 attributes , escaping , security , xss Is HTML Not a Programming Language? Jun 11, 2025 1,912 programming Creating an Auto-Closing Notification With an HTML Popover (pre /css )Jun 9, 2025 1,911 notifications , pop-overs ARIA/HTML Relationship Severance (ste )Jun 7, 2025 1,910 accessibility , aria The “<output>” Element (kev )Jun 6, 2025 1,909 HTML-Native Accordions (cfe )Jun 5, 2025 1,908 accordions “aria-selected”: Practical Examples and Use Cases (flo /a11 )Jun 5, 2025 1,907 accessibility , aria , examples How to Use ARIA Roles and Properties Effectively Jun 4, 2025 1,906 how-tos , aria , accessibility Getting Creative With HTML Dialog (mal /css )Jun 3, 2025 1,905 modals HTML Only Experiments (ala )May 30, 2025 1,904 websites , experiments Up and Coming ARIA (web )May 30, 2025 1,903 accessibility , aria The “col” Element (hey )May 29, 2025 1,902 tables , semantics The Magic of the Most Minimal HTML Possible (and Why We Don’t Make Use of It) (j9t )May 27, 2025 1,901 minimalism , maintainability What I Learnt About Making Websites by Reading Two Thousand Web Pages (ale )May 26, 2025 1,900 css , conditional-comments , lessons Decorative Text Within HTML (ede )May 25, 2025 1,899 attributes , css , formatting Making Scannable Web Pages for Assistive Technology (jar )May 23, 2025 1,898 accessibility , assistive-tech , design , headings , semantics The “datalist” Element (kev )May 22, 2025 1,897 forms Styling the Icon for HTML Date and Time Types (cas )May 21, 2025 1,896 forms , css , time The “caption” Element (hey )May 20, 2025 1,895 tables , semantics Expanding/Collapsing With “details” (ons /oze )May 17, 2025 1,894 accessibility , disclosure-widgets Is There a Correct Answer? Flipping Layouts When Google Translate Swaps Between a Left-to-Right Language and a Right-to-Left Language (chr /fro )May 16, 2025 1,893 internationalization , localization , conversion How Often Should We Speak About HTML Conformance? (j9t )May 14, 2025 1,892 conformance , metrics Just Fucking Use HTML (kyr )May 12, 2025 1,891 websites Enhancements to the Proposed “<permission>” Element (tom )May 12, 2025 1,890 Foundations: Keyboard Accessibility (tet )May 9, 2025 1,889 fundamentals , accessibility , keyboard-navigation , focus The True Path to Garbage Code: Figma Sites (joe )May 9, 2025 1,888 figma , quality , semantics , accessibility The Hidden Gold of Web Accessibility: Everything About ARIA Labels (flo /a11 )May 6, 2025 1,887 accessibility , aria , best-practices K.I.S.S. ARIA (nat )May 5, 2025 1,886 aria , accessibility The “code” Element (hey )May 5, 2025 1,885 markdown Revisiting Image Maps (mal /css )Apr 30, 2025 1,884 images , image-maps , techniques The “cite” Element (hey )Apr 30, 2025 1,883 semantics Seeking an Answer: Why Can’t HTML Alone Do Includes? (chr /fro )Apr 29, 2025 1,882 maintainability Menu and Navigation: The Difference (stv )Apr 28, 2025 1,881 navigation , pagination , aria , accessibility The “canvas” Element (hey )Apr 28, 2025 1,880 canvas , semantics Giving Software Away for Free (sim )Apr 28, 2025 1,879 foss , hosting , javascript Anchor Positioning Just Don’t Care About Source Order (geo /css )Apr 28, 2025 1,878 css , anchor-positioning , source-order Unlocking Accessibility: Frontend Developers Discuss Semantic HTML and Accessible Code Apr 25, 2025 1,877 accessibility , semantics , community “input type="color"” (kev )Apr 24, 2025 1,876 forms , colors HTML Oddities: Does the Order of Attribute Values Matter? (ede )Apr 24, 2025 1,875 attributes , css , selectors The Problem(s) With Image Accessibility Apr 23, 2025 1,874 accessibility , images , alt-text Mastering HTML: The Art of Minimal and Valid Code in Professional Web Development (AI Edition) (j9t )Apr 23, 2025 1,873 guest-posts , minimalism , conformance , semantics , interoperability , accessibility , standards Keeping It on the “<dl>”—Another HTML Gem You Never Use (cod )Apr 18, 2025 1,872 lists , semantics Creating an Accessible Accordion With HTML Description Lists (kar )Apr 17, 2025 1,871 accessibility , lists , accordions 5 Ways to Reduce HTML File Size on Your Website, Step 0 (j9t )Apr 16, 2025 1,870 performance , optimization Default Styles for “h1” Elements Are Changing (zco /mdn )Apr 11, 2025 1,869 css , headings , browsers 5 Ways to Reduce HTML File Size on Your Website (deb )Apr 10, 2025 1,868 minification , compression , performance , optimization ARIA in HTML (sco +/w3c )Apr 9, 2025 1,867 standards , accessibility , aria Milana Cap on the Interactivity and HTML APIs, and Their Enormous Potential (mil +)Apr 9, 2025 1,866 podcasts , interviews , wordpress , apis , dom Strings Are a Leaky Abstraction for HTML (joe )Apr 8, 2025 1,865 strings Hiding Elements That Require JavaScript Without JavaScript (0xd )Apr 5, 2025 1,864 javascript , css Tweaking Text Level Styles, Reprised (aar )Apr 5, 2025 1,863 css , accessibility , support , browsers , screen-readers CSS-Only Glitch Effect Apr 3, 2025 1,862 css , effects Markup Languages (j9t )Mar 28, 2025 1,861 overviews , link-lists , sgml , xml , xhtml , hdml , dhtml , mathml , wml , chtml “input type="number"” (kev )Mar 25, 2025 1,860 forms “aria-label” Is a Letdown (thi /wag )Mar 24, 2025 1,859 accessibility , aria , labels Create an HTML Dialog When You Click an Image (cas )Mar 21, 2025 1,858 images , modals The “contenteditable” “plaintext-only” Attribute Value Combination Is Now Baseline Newly Available (tom )Mar 20, 2025 1,857 attributes , browsers , support , web-platform The Bare Minimum You Need to Enable View Transitions on Your Website (ami )Mar 19, 2025 1,856 css , view-transitions , minimalism Quick Accessibility Wins That Are Easy to Implement (kev )Mar 19, 2025 1,855 videos , accessibility , semantics , alt-text , images , contrast , colors , keyboard-navigation , focus , skip-links Is React Accessible? That’s the Wrong Question Mar 17, 2025 1,854 accessibility , react , jsx , semantics Web Components vs. Framework Components: What’s the Difference? (sma )Mar 17, 2025 1,853 web-components , components , frameworks , comparisons A Review of HTML Linters Mar 17, 2025 1,852 overviews , linting , conformance , tooling , link-lists , comparisons Popping Preconceived Popover Ponderings (sco )Mar 14, 2025 1,851 accessibility , pop-overs Future of CSS: “select” Styling Without the Hacks Mar 10, 2025 1,850 css , selectors , forms Implementing “aria-describedby” for Web Accessibility (flo /a11 )Mar 7, 2025 1,849 accessibility , aria , forms , labels Creating Animated Accordions With the “details” Element and Modern CSS (ste /bui )Mar 7, 2025 1,848 css , disclosure-widgets , accordions , animations , transitions Page Speed: Avoid Large Base64 Data URLs in HTML and CSS (deb )Mar 7, 2025 1,847 performance , css , data-urls , compression , base64 Introducing “command” and “commandfor” (kei )Mar 7, 2025 1,846 introductions , attributes DeepSeek and HTML (j9t )Mar 7, 2025 1,845 ai , deepseek , minimalism , conformance Cool Native HTML Elements You Should Already Be Using (hrr )Mar 6, 2025 1,844 modals , disclosure-widgets , forms , progress-indicators Grouping Selection List Items Together With CSS Grid (pre /css )Mar 5, 2025 1,843 lists , forms , css , grids , layout Building Websites With LLMS (jim )Mar 4, 2025 1,842 css , view-transitions Using and Styling the “details” Element (geo /css )Mar 4, 2025 1,841 css , disclosure-widgets , examples The Professional Standing of Frontend Developers (mar )Mar 4, 2025 1,840 guest-posts , career , learning , css , javascript , communication , collaboration , community , ai Unlock Exciting Use Cases With the Document Picture-in-Picture API (jad )Mar 4, 2025 1,839 apis CSS Meets Voxel Art: Building a Rendering Engine With Stacked Grids (cod )Mar 3, 2025 1,838 css , art There’s No Such Thing as “Menubar Navigation” (tem )Feb 28, 2025 1,837 accessibility , navigation When to Use Lists for Better Accessibility Feb 27, 2025 1,836 accessibility , lists Introduction to Frontend Development Feb 21, 2025 1,835 introductions , css , javascript , frameworks , libraries , tooling , career , trends Fixing “rowspan=0” on Tables on WebKit (kar )Feb 21, 2025 1,834 tables , webkit , browser-engines , browsers Everything You Need to Know About Invoker Commands (kei /web )Feb 21, 2025 1,833 videos , pop-overs “ruby-align” Is Baseline Newly Available Feb 21, 2025 1,832 ruby-markup , css , browsers , support , web-platform Rethinking Find-in-Page Accessibility: Making Hidden Text Work for Everyone (sch )Feb 17, 2025 1,831 accessibility , search , hiding , browsers It’s Right There in the Back of the Book (hom )Feb 17, 2025 1,830 accessibility , semantics Using the “step” and “pattern” Attributes to Make Number Inputs More Useful (cas /pic )Feb 13, 2025 1,829 forms Which HTML Element Are You? Feb 13, 2025 1,828 quizzes Testing 10 JavaScript Frameworks on Their HTML Defaults (j9t )Feb 12, 2025 1,827 frameworks , javascript , conformance , comparisons , link-lists Optimizing Images for Web Performance (tod /fro )Feb 10, 2025 1,826 images , performance , optimization , jpeg , png , webp , avif , caching Taking RWD to the Extreme (sma )Feb 7, 2025 1,825 responsive-design , intrinsic-design , css How to Declare Your Page’s Language (pop )Feb 5, 2025 1,824 how-tos , internationalization HTML and CSS for a One-Time Password Input (chr /fro )Feb 5, 2025 1,823 css , forms , passwords A Content List With Bulk Actions Using Ancient HTML and Modern CSS (tyl /clo )Feb 4, 2025 1,822 forms , lists , css Using Padding to Space an Input and Label (dar )Feb 4, 2025 1,821 forms , labels , spacing , css Foundations: Grouping Forms With “<fieldset>” and “<legend>” (tet )Jan 31, 2025 1,820 fundamentals , forms , aria How to Set Up an Accessible Page Structure and Navigation (pop )Jan 31, 2025 1,819 how-tos , accessibility , navigation XHTML in Modern Web Development (mar )Jan 30, 2025 1,818 guest-posts , xhtml What Text Area Popovers Taught Me About Browser APIs (bla )Jan 28, 2025 1,817 forms , apis , javascript Only One “<details>” Open at a Time (osv )Jan 25, 2025 1,816 disclosure-widgets Creating an Angled Slider (zac /fro )Jan 22, 2025 1,815 sliders , css , effects Don’t Wrap Figure in a Link (aar )Jan 16, 2025 1,814 links , screen-readers , accessibility 23 HTML Cheat Sheets, for a Different Look at HTML (fro )Jan 16, 2025 1,813 cheat-sheets , link-lists Learning HTML Is the Best Investment I Ever Did (cod )Jan 15, 2025 1,812 learning , career HTML Developers: Please Consider—in the Year of 2025 (ste )Jan 11, 2025 1,811 aria , accessibility Clean Up HTML Content for Retrieval-Augmented Generation With Readability.js (phi /dat )Jan 9, 2025 1,810 scraping , tooling , nodejs , rag Sharing a Variable Across HTML, CSS, and JavaScript (chr /fro )Jan 8, 2025 1,809 variables , css , javascript Lesser Known Uses of Better Known Attributes (sma )Jan 8, 2025 1,808 attributes Accessibility Essentials Every Front-End Developer Should Know (mar )Jan 7, 2025 1,807 accessibility , fundamentals , semantics , forms , keyboard-navigation , modals , alt-text , focus , responsive-design , reduced-motion , aria How to Order Attributes on HTML Elements Jan 6, 2025 1,806 how-tos , attributes , sorting , conventions Relatively New Things You Should Know About HTML Heading Into 2025 (chr /fro )Jan 6, 2025 1,805 forms , toggles , pop-overs , javascript , import-maps , css , transitions The Difference Between HTML Attributes and Properties (pau /clo )Jan 6, 2025 1,804 attributes , javascript , terminology Use “translate” to Turn Off Element Translations (ste )Jan 6, 2025 1,803 localization Brief Note on Figure and Figcaption Support (aar )Jan 6, 2025 1,802 accessibility , screen-readers , support HTML Is Actually a Programming Language—Fight Me (tim /wir )Jan 6, 2025 1,801 programming Updated Brief Note on Description List Support (aar )Jan 3, 2025 1,800 lists , semantics , accessibility , screen-readers , support Datalists Are More Powerful Than You Think (two /mat )Dec 29, 2024 1,799 Media (ste +/htt )Dec 29, 2024 1,798 web-almanac , studies , research , metrics , multimedia , images Why Heading Order Matters in HTML (gra )Dec 27, 2024 1,797 headings , accessibility Misleading Icons: Icon-Only-Buttons and Their Impact on Screen Readers (ale /mat )Dec 27, 2024 1,796 buttons , icons , images , accessibility , screen-readers The Underrated “<dl>” Element (luh /mat )Dec 26, 2024 1,795 lists Preloading Fonts for Web Performance With “link rel=preload” (acc /mat )Dec 25, 2024 1,794 performance , preloading , fonts , hints The Search Input: They Almost Got It Right (stv /mat )Dec 24, 2024 1,793 forms , labels , screen-readers , assistive-tech , accessibility The Devil Is in the “<details>” (mat )Dec 23, 2024 1,792 disclosure-widgets Please Keep Your HTML Tables Clean and Lean, if You Really Need to Use Them (cer )Dec 22, 2024 1,791 accessibility , tables PSA: Stop Using the “title” Attribute as Tooltip (dni /mat )Dec 22, 2024 1,790 attributes , tooltips , toggles , accessibility Accessibility First: How to Design Inclusive Frontend Experiences Dec 22, 2024 1,789 how-tos , design , accessibility , semantics , alt-text , keyboard-navigation , aria , contrast , forms , focus Grouping Form Fields (mat )Dec 21, 2024 1,788 forms My Favourite Colour Is Chuck Norris Red (val /mat )Dec 20, 2024 1,787 colors No ARIA Is Better Than Bad ARIA (kar )Dec 20, 2024 1,786 videos , accessibility , aria Getting Oriented With HTML Video (sco /mat )Dec 19, 2024 1,785 multimedia , web-components Microdata for Books (ala /mat )Dec 18, 2024 1,784 microdata HTML Conformance: A Comparison of 6.5 npm Validator Packages (With 1.5 Recommendations) (j9t )Dec 17, 2024 1,783 conformance , tooling , npm , comparisons You Don’t Need the “isOpen” Class (mau /mat )Dec 16, 2024 1,782 aria , accessibility HTML “inert” Attribute (stv /5t3 )Dec 15, 2024 1,781 attributes The Gift You Do Not Want: A Div in a Button’s Clothing (mat )Dec 15, 2024 1,780 buttons , accessibility Page by Page: How Pagination Makes the Web Accessible (mat )Dec 14, 2024 1,779 accessibility , pagination , css , svg ARIA in HTML (sco +/w3c )Dec 13, 2024 1,778 standards , accessibility , aria Improving User Experience for Multilingual Web Browsing (mat )Dec 13, 2024 1,777 user-experience , internationalization HTML and CSS I Didn’t Even Know About Before I Started Creating Content in Japanese (mat )Dec 12, 2024 1,776 ruby-markup , css , internationalization Makeshift Hot Reload (eva /mat )Dec 11, 2024 1,775 metadata On-Page SEO Checklist: The Complete Task List for 2025 (sem )Dec 10, 2024 1,774 seo , checklists , semantics Submit to the Quirks of HTML (fel /mat )Dec 10, 2024 1,773 forms Native HTML Light and Dark Color Scheme Switching (pep /mat )Dec 9, 2024 1,772 dark-mode , css , javascript , functionality Past HTML, Future HTML? (j9t /mat )Dec 8, 2024 1,771 Almost, but Not Quite, Entirely Unlike… (tin /mat )Dec 7, 2024 1,770 accessibility , buttons , ai What Do the State of CSS and HTML Surveys Tell Us? (rac )Dec 6, 2024 1,769 web-platform , css , community What Is HTML Optimization? What Is It Not? (j9t )Dec 5, 2024 1,768 optimization , terminology Control the Viewport Resize Behavior on Mobile With “interactive-widget” (bra /mat )Dec 4, 2024 1,767 css , units , viewport , resizing , mobile , metadata Creating an Effective Multistep Form for Better User Experience (sma )Dec 3, 2024 1,766 forms , javascript , user-experience Starting Off Right: Where Autofocus Shines (kil /mat )Dec 2, 2024 1,765 forms , focus The HTML Native Search Element (tre )Dec 2, 2024 1,764 semantics Character-Based Alignment (css )Nov 29, 2024 1,763 css , alignment Preloading Responsive Images (tre )Nov 28, 2024 1,762 images , hints , performance , preloading A Button Is Not a Link (mor /mat )Nov 26, 2024 1,761 buttons , links Language of Parts Bookmarklet (bea )Nov 25, 2024 1,760 bookmarklets , metadata , accessibility Old Alt Text Advice (ste )Nov 23, 2024 1,759 accessibility , images , alt-text , microcontent , best-practices Avoid Read-Only Controls (aar )Nov 21, 2024 1,758 forms , accessibility Where Has All the Valid HTML Gone (j9t )Nov 21, 2024 1,757 conformance , quality My 3 Most-Wanted CSS Table Features (dar )Nov 20, 2024 1,756 css , tables , wish-lists Importing a Frontend JavaScript Library Without a Build System (b0r )Nov 18, 2024 1,755 javascript , libraries , commonjs , esm , nodejs Native Dual-Range Input Nov 18, 2024 1,754 forms , css State of HTML 2024 [Results] (sac /dev )Nov 14, 2024 1,753 surveys , metrics The “br” Element (hey )Nov 12, 2024 1,752 semantics Markup (gua /htt )Nov 11, 2024 1,751 web-almanac , studies , research , metrics State of CSS and State of HTML 2024 (pat )Nov 8, 2024 1,750 css The Path to Learn Web Development (fla )Nov 8, 2024 1,749 learning , http , css , tooling , git , javascript , typescript , databases , frameworks How to Identify Decorative Images and Boost Accessibility (a11 )Nov 7, 2024 1,748 how-tos , images , decoration , accessibility , aria The Lowdown on Dropdowns in HTML and CSS (zer )Nov 7, 2024 1,747 css More Options for Styling “<details>” (bra )Nov 6, 2024 1,746 disclosure-widgets , css How Do HTML Event Handlers Work? (tbr )Nov 5, 2024 1,745 javascript , events Disabled and Obscured (ste )Nov 4, 2024 1,744 accessibility , forms , wcag , standards The “button” Element (hey )Nov 4, 2024 1,743 semantics , buttons , links HTML Cheat Sheet Nov 4, 2024 1,742 semantics , examples , cheat-sheets Building My Resume in HTML Using Eleventy (men )Nov 3, 2024 1,741 career , eleventy 20 HTML Tips You Must Know in 2024 (xiu )Nov 2, 2024 1,740 tips-and-tricks The “<details>” and “<summary>” Elements Are Getting an Upgrade (sea )Nov 1, 2024 1,739 disclosure-widgets The “body” Element (hey )Oct 31, 2024 1,738 semantics 25 Accessibility Tips to Celebrate 25 Years (jar /web )Oct 31, 2024 1,737 accessibility , tips-and-tricks , aria Come to the “light-dark()” Side (sar /css )Oct 29, 2024 1,736 dark-mode , css , colors Clarifying the Relationship Between Popovers and Dialogs (zel /css )Oct 29, 2024 1,735 pop-overs , modals , comparisons , accessibility HTML Form Validation Is Heavily Underused Oct 28, 2024 1,734 forms , validation , react Talkin’ Tables (aar /web )Oct 25, 2024 1,733 videos , accessibility , tables Why Does “target="_blank"” Have an Underscore in Front? (kyr )Oct 25, 2024 1,732 frames , links My Top 5 Most Popular Front-End Tips (kev )Oct 23, 2024 1,731 videos , css , forms , tips-and-tricks How Should “<selectedoption>” Work? (jaf )Oct 18, 2024 1,730 forms An HTML Email Template With Basic Typography and Dark/light Modes (chr /fro )Oct 17, 2024 1,729 templates , email , typography , dark-mode Using Static Websites for Tiny Archives Oct 16, 2024 1,728 css I’ve Been Doing Blockquotes Wrong (mic )Oct 16, 2024 1,727 The “blockquote” Element (hey )Oct 14, 2024 1,726 semantics My Eulogy for the Open Web and Old Google Oct 13, 2024 1,725 open-web , google HTML/CSS Frameworks, in Their Own Words (by Word Cloud) (j9t )Oct 11, 2024 1,724 frameworks , css , bootstrap , tailwind , foundation , bulma , milligram , pure , uikit , comparisons HTML for People (bw )Oct 10, 2024 1,723 books , websites , examples The New Stylable “<select>” Element (jaf +)Oct 8, 2024 1,722 podcasts , css , apis , forms No Industry for Old Men (ste /web )Oct 7, 2024 1,721 videos , retrospectives , aria , browsers , screen-readers , accessibility , w3c The Popover API: Your New Best Friend for Tooltips (dev )Oct 7, 2024 1,720 pop-overs , apis , tooltips , css , javascript Web Components: Little Bits (web )Oct 7, 2024 1,719 videos , web-components Practical Accessibility Tips You Can Apply Today (pic )Oct 3, 2024 1,718 accessibility , tips-and-tricks An Interesting HTML Parser Conundrum (dbu )Oct 1, 2024 1,717 parsing The “bdi” Element (hey )Sep 30, 2024 1,716 semantics , internationalization What’s the Difference Between HTML’s Dialog Element and Popovers? (chr /fro )Sep 30, 2024 1,715 modals , pop-overs , comparisons How to Learn HTML: 46 Great Sites, Courses, and Books (All Free) Sep 29, 2024 1,714 how-tos , learning , courses , books , link-lists The “b” Element (hey )Sep 28, 2024 1,713 semantics “img sizes=auto” for Native Lazy Loading (ste )Sep 27, 2024 1,712 code-pens , images , lazy-loading , performance Hire HTML and CSS People (fon )Sep 21, 2024 1,711 css , hiring , engineering-management Why HTML Has Both “<b/i>” and “<strong/em>”? Sep 16, 2024 1,710 semantics The Importance of Title Tags: Tips and Tricks to Optimize for SEO (web )Sep 13, 2024 1,709 seo , optimization , tips-and-tricks State of HTML 2024 (sac /dev )Sep 12, 2024 1,708 surveys Request for Developer Feedback: Customizable Select (una )Sep 12, 2024 1,707 forms 2024: 0.5% of the Global Top 200 Websites Use Valid HTML (j9t )Sep 11, 2024 1,706 conformance , metrics , quality , craft What Does Hydration Mean? (chr /fro )Sep 9, 2024 1,705 hydration , concepts , javascript , dom Going Buildless (mxb )Sep 8, 2024 1,704 building , components The HTML History and Optimization Cheat Sheet (j9t )Sep 5, 2024 1,703 history , optimization , cheat-sheets Should Form Labels Be Wrapped or Separate? (sib /tpg )Sep 4, 2024 1,702 forms , labels , accessibility , browsers , assistive-tech HTML Whitespace Is Broken (dev )Sep 2, 2024 1,701 whitespace Semi-Annual Reminder to Learn and Hire for Web Standards (aar )Sep 1, 2024 1,700 learning , fundamentals , standards , css Headings (web )Aug 30, 2024 1,699 headings , accessibility Paragraphs (sco )Aug 29, 2024 1,698 accessibility What the Heck Is ARIA? A Beginner’s Guide to ARIA for Accessibility (a11 )Aug 29, 2024 1,697 videos , guides , aria , accessibility The “aside” Element (hey )Aug 28, 2024 1,696 semantics , accessibility The Secret Inside One Million Checkboxes Aug 28, 2024 1,695 databases , community What’s Missing From HTML and CSS? (rac )Aug 28, 2024 1,694 css Make Me One (Input) With Everything (mor /mat )Aug 27, 2024 1,693 forms , accessibility , simplicity What Skills Should You Focus on as Junior Web Developer in 2024? (fro )Aug 26, 2024 1,692 career , fundamentals , css , javascript , frameworks , tooling , learning , link-lists How to Easily Add Dark Mode to Your Website Aug 26, 2024 1,691 how-tos , dark-mode , css , javascript , functionality Is Using “aria-label” to Add Alternative Text but No “alt” Attribute Still a WCAG Fail? Aug 23, 2024 1,690 discussions , accessibility , attributes , forms , labels , aria , alt-text , images Spoiler Alert: It Needs to Be Accessible (sco )Aug 22, 2024 1,689 accessibility , web-components , aria Raw-Dogging Websites (bra )Aug 22, 2024 1,688 css , javascript , tech-stacks The Top Programming Languages 2024 (iee )Aug 22, 2024 1,687 programming , comparisons , python , java , javascript , typescript , sql , go , php , lua Foundations: Labelling Text Fields With Input and Label (tet )Aug 21, 2024 1,686 accessibility , fundamentals , forms , labels Expert Guide: Writing HTML for Screen Reader Users (flo /a11 )Aug 20, 2024 1,685 guides , accessibility , aria , alt-text , writing , screen-readers Top 5 HTML Features You’re Not Using (but Should Be) Aug 20, 2024 1,684 How Are the “colspan” and “rowspan” Attributes Different? (geo /css )Aug 15, 2024 1,683 attributes , tables How Does the Browser Render HTML? (and )Aug 15, 2024 1,682 browsers , browser-engines , rendering , dom , css , cssom , painting “blocking=render”: Why Would You Do That?! (css )Aug 14, 2024 1,681 performance , rendering Rote Learning HTML & CSS (j9t /fro )Aug 14, 2024 1,680 books , frontend-dogma , css , learning The “address” Element (hey )Aug 12, 2024 1,679 semantics Action Web Components Which Span the Server-Client Divide (jar )Aug 11, 2024 1,678 web-components , apis ObsoHTML, the Obsolete HTML Checker (j9t )Aug 11, 2024 1,677 packages , npm , quality The “abbr” Element (hey )Aug 7, 2024 1,676 semantics , accessibility HTML Web Components Can Have a Little Shadow DOM, as a Treat (sco )Aug 5, 2024 1,675 web-components , shadow-dom , dom The Anchor Element (hey )Aug 2, 2024 1,674 links , semantics , terminology , usability The Anatomy of Accessible Forms: Best Practices (deq )Aug 1, 2024 1,673 accessibility , forms , best-practices HTML Web Components Make Progressive Enhancement and CSS Encapsulation Easier (css )Aug 1, 2024 1,672 web-components , principles , solid , progressive-enhancement , examples Replacing jQuery UI Datepicker With HTML Date Input (chr )Jul 31, 2024 1,671 jquery Pop(over) the Balloons (css )Jul 25, 2024 1,670 disclosure-widgets , pop-overs , css Learn Web Components (and )Jul 22, 2024 1,669 websites , courses , web-components , css , dom , javascript Don’t Use JS for That: Moving Features to CSS and HTML (kil /jsc )Jul 19, 2024 1,668 videos , javascript , css Named Alternates for WordPress (ede )Jul 17, 2024 1,667 wordpress What ARIA Still Does Not Do (ste )Jul 15, 2024 1,666 aria , accessibility , standards An Update on Invokers: Invoker Commands in HTML (uti )Jul 15, 2024 1,665 modals , pop-overs How to Parse HTML in JavaScript (api )Jul 4, 2024 1,664 how-tos , parsing , javascript Mythbusting DOM: Was DOM Invented Alongside HTML? Jul 3, 2024 1,663 myths , dom , history Are Web Components Worth It? Jul 1, 2024 1,662 podcasts , web-components , dom , shadow-dom A Rant About Front-End Development Jun 20, 2024 1,661 content , css , javascript , preprocessors , frameworks , complexity Know the “search” Element (j9t )Jun 19, 2024 1,660 semantics HTML Markup Explained: Building Blocks of Modern Web Pages Jun 14, 2024 1,659 fundamentals Streaming HTML—Asynchronous DOM Updates Without JavaScript (inf )Jun 11, 2024 1,658 asynchronicity , dom , streaming Ditch the Pixels: The Small and Vectorized Web (yor )Jun 6, 2024 1,657 svg , images HTML Cheat Sheets: From Basics to Advanced Elements Jun 6, 2024 1,656 fundamentals , semantics , examples , cheat-sheets The Ultimate Guide to Iframes (log )Jun 6, 2024 1,655 guides , iframes , javascript , security Doing My Heading In (ste +)Jun 5, 2024 1,654 interviews , headings , accessibility Maybe Don’t Name That Landmark (aar )Jun 5, 2024 1,653 semantics , accessibility Reflection and Custom States in Web Components (cla )Jun 5, 2024 1,652 web-components Fine-Tuning Text Inputs (gar )Jun 4, 2024 1,651 forms , attributes , usability Semantic Code in HTML: What Is It and Does It Still Matter? (boa )Jun 1, 2024 1,650 semantics , accessibility , seo , maintainability , performance