Use Cases for “aria-expanded” (stv /pic )Jul 16, 2026 145 html , aria , accessibility , examples “focusgroup” Tests (aar )Jul 5, 2026 144 html , focus , chrome , google , browsers , examples , accessibility The Siren Song of “ariaNotify()” (wil /css )Jun 17, 2026 143 javascript , aria , notifications , html , jaws , nvda , voiceover , screen-readers , accessibility “headingoffset” Is Not the Document Outline Algorithm (aar )Jun 11, 2026 142 html , headings Context-Aware Headings in HTML (mat )Jun 3, 2026 141 headings , html Why the “accept” Attribute Degrades File Upload UX (ada )May 31, 2026 140 forms , file-handling , user-experience Managing Anchor Associations With Data Attributes and Advanced “attr()” (dxn /fro )May 27, 2026 139 anchor-positioning , html , custom-data , css , functions Lost, Forgotten, and Unfamiliar HTML (tho )May 27, 2026 138 html Don’t Put “aria-label” on Generic Elements Like Divs (mat )May 22, 2026 137 html , aria , screen-readers , support , accessibility Our CSS Isn’t Opinionated Enough (cra )May 21, 2026 136 css , cascade , aria Not All Hidden Content Is Equal: How Different Hiding Methods Impact Accessibility May 12, 2026 135 accessibility , hiding , css , html , aria , techniques , comparisons ARIA Roles and Web Accessibility: A Quick Guide (lev )Apr 30, 2026 134 guides , accessibility , aria , html My Thoughts on the “focusgroup” Attribute Proposal (stv )Apr 20, 2026 133 html , forms , focus Tooltips That Work for Everyone (ele )Mar 25, 2026 132 tooltips , accessibility , html , aria , screen-readers , nvda , jaws Testing Browser Support for “focusgroup” (ada )Mar 9, 2026 131 html , focus , javascript Request for Developer Feedback: “focusgroup” (jac )Mar 5, 2026 130 html , focus , chromium , browsers Your Skip Link Targets May Not Need “tabindex=-1” to Work Properly (mat )Mar 4, 2026 129 skip-links , html , accessibility You Can Use Newline Characters in URLs (lem )Feb 28, 2026 128 urls , data-urls , links , html “role=presentation” Is No Alternative for “aria-hidden=true” (mat )Feb 27, 2026 127 accessibility , aria , html , comparisons Put “aria-hidden=true” on Decorative SVGs (mat )Feb 27, 2026 126 svg , images , aria , accessibility “aria-haspopup” Might Not Do What You Think It Does (mat )Feb 23, 2026 125 html , aria , navigation , accessibility Why “role="button"” on a “<button>” Does Nothing (rus )Dec 22, 2025 124 html , buttons , aria Semantics Beyond the Tag Name (kno /mat )Dec 19, 2025 123 html , aria , semantics , accessibility How “aria-labelledby” Really Works (rus )Dec 17, 2025 122 accessibility , aria , html Controlling Dialogs and Popovers With the Invoker Commands API (sta /mat )Dec 7, 2025 121 modals , pop-overs , apis , html Accessible by Design: The Role of the “lang” Attribute (col /mat )Dec 6, 2025 120 accessibility , internationalization , html , metrics A Complete Guide to the HTML Number Input (oll )Nov 14, 2025 119 guides , html , forms Make Navigation Accessible With “aria-current” (a11 )Sep 30, 2025 118 accessibility , navigation , aria “aria-label” or “title”? Screen Reader Behaviour Explained (a11 )Sep 15, 2025 117 html , accessibility , screen-readers A Few Things About the Anchor Element’s “href” You Might Not Have Known (jim )Aug 3, 2025 116 html , links , data-urls How Semantics and ARIA Attributes Support Accessible Design (tpg )Jul 22, 2025 115 accessibility , semantics , aria , html What Is “popover=hint”? (una )Jul 7, 2025 114 html , pop-overs Escaping “<” and “>” in Attributes—How It Helps Protect Against Mutation XSS (sec )Jun 12, 2025 113 html , security , xss , escaping , chrome , google , browsers HTML Spec Change: Escaping “<” and “>” in Attributes (sec )Jun 12, 2025 112 html , escaping , security , xss Translating Accessibility (tpg )Jun 4, 2025 111 accessibility , localization , examples Decorative Text Within HTML (ede )May 25, 2025 110 html , css , formatting HTML Oddities: Does the Order of Attribute Values Matter? (ede )Apr 24, 2025 109 html , css , selectors First Look at the Modern “attr()” (sha )Apr 3, 2025 108 css , functions , feature-detection The “contenteditable” “plaintext-only” Attribute Value Combination Is Now Baseline Newly Available (tom )Mar 20, 2025 107 html , browsers , support , web-platform Introducing “command” and “commandfor” (kei )Mar 7, 2025 106 introductions , html The “attr()” Function in CSS Now Supports Types (ami )Feb 17, 2025 105 css , functions , types Lesser Known Uses of Better Known Attributes (sma )Jan 8, 2025 104 html How to Order Attributes on HTML Elements Jan 6, 2025 103 how-tos , html , sorting , conventions The Difference Between HTML Attributes and Properties (pau /clo )Jan 6, 2025 102 html , javascript , terminology PSA: Stop Using the “title” Attribute as Tooltip (dni /mat )Dec 22, 2024 101 html , tooltips , toggles , accessibility HTML “inert” Attribute (stv /5t3 )Dec 15, 2024 100 html Is Using “aria-label” to Add Alternative Text but No “alt” Attribute Still a WCAG Fail? Aug 23, 2024 99 discussions , accessibility , html , forms , labels , aria , alt-text , images How Are the “colspan” and “rowspan” Attributes Different? (geo /css )Aug 15, 2024 98 html , tables Fine-Tuning Text Inputs (gar )Jun 4, 2024 97 forms , html , usability Ignore and Acknowledge “class” Attribute on Elements in CSS (ami )May 16, 2024 96 css , html HTML Attributes vs. DOM Properties (jaf )Apr 24, 2024 95 html , dom , comparisons Don’t Use the “maxlength” Attribute to Stop Users From Exceeding the Limit (ada )Apr 15, 2024 94 html , forms , usability On “disabled” and “aria-disabled” Attributes (kit )Mar 29, 2024 93 accessibility , html , aria Exploring the Power of ARIA Live Attribute in Web Accessibility Mar 26, 2024 92 accessibility , aria Distinguishing Between ARIA and Native HTML Attributes (deq )Mar 11, 2024 91 html , aria , accessibility , comparisons HTML Attributes That Every Web Developer Should Know Feb 4, 2024 90 html , pop-overs , forms , custom-data Using “abbr” Element With “title” Attribute (aar )Jan 11, 2024 89 html , accessibility , browsers , assistive-tech , support The “hidden” Attribute in HTML (mat )Dec 11, 2023 88 html “sizes=auto” Pretty Much Requires “width” and “height” Attributes (eee )Dec 5, 2023 87 html , images , maintainability Back to Basics: 5 HTML Attributes for Improved Accessibility and User Experience (dni /mat )Dec 4, 2023 86 fundamentals , html , accessibility , user-experience The “form” Attribute—Enhancing Form Layout Flexibility (mat )Dec 3, 2023 85 forms , html PHP Attributes in Laravel Nov 21, 2023 84 php , laravel 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 83 html 13 HTML Attributes You Should Know About Nov 7, 2023 82 html Why Unique ID Attributes Matter (deq )Oct 19, 2023 81 accessibility , html , conformance Styling External Links With Attribute Selectors (mic )Oct 11, 2023 80 links , css , selectors What Does the Image “decoding” Attribute Actually Do? (tun )Jun 26, 2023 79 html , images , performance Semantics and the “popover” Attribute: What to Use When? (hdv )May 16, 2023 78 html , semantics , accessibility , pop-overs How “x-default” Can Help You (met )May 8, 2023 77 internationalization , urls , html , search , google HTML: Help Users to Download Files With the HTML “download” Attribute Mar 29, 2023 76 html Three Attributes for Better Web Forms (ada )Jan 19, 2023 75 forms , html The Wasted Potential of CSS Attribute Selectors Oct 16, 2022 74 css , selectors , bem Avoiding “<img>” Layout Shifts: “aspect-ratio” vs. “width” and “height” Attributes (jaf )Jul 11, 2022 73 performance , web-vitals , comparisons , html , aspect-ratio , css Making Disabled Buttons More Inclusive (san /css )May 22, 2022 72 forms , buttons , focus , aria , html , accessibility How the HTML “lang” Attribute Helps Accessibility May 17, 2022 71 accessibility , html , localization Introducing “inert” Apr 28, 2022 70 introductions , html , accessibility , keyboard-navigation Non-Interactive Elements With the “inert” Attribute (web )Apr 26, 2022 69 html , semantics Those HTML Attributes You Never Use (lou /sma )Mar 23, 2022 68 html Using the Language Attribute to Make Your Website Accessible (cra )Feb 11, 2022 67 accessibility , localization , internationalization 24 Lesser-Known HTML Attributes You May Want to Use Feb 1, 2022 66 html Boolean Attributes in HTML and ARIA: What’s the Difference? (hdv )Jan 12, 2022 65 html , aria Links, Missing “href” Attributes, and Over-Engineered Code (tem )Sep 30, 2021 64 html , links , accessibility 7 Useful HTML Attributes You May Not Know Sep 22, 2021 63 html Custom Attributes Are Fast Good and Cheap May 7, 2021 62 css , selectors SVG Title vs. HTML Title Attribute (chr /css )Jul 30, 2020 61 svg , html Responsive Styling Using Attribute Selectors (css )Jun 30, 2020 60 css , selectors , responsive-design The 24 Boolean Attributes of HTML (j9t )May 19, 2020 59 html What’s the Difference Between Width/Height in CSS and Width/Height HTML Attributes? (chr /css )Jan 24, 2020 58 css , html , comparisons The “hidden” Attribute Is Visibly Weak (chr /css )Oct 16, 2019 57 html , hiding Working With Attributes on DOM Elements (css )Aug 30, 2019 56 dom , custom-data , html , javascript Splicing HTML’s DNA With CSS Attribute Selectors (sma )Oct 23, 2018 55 html , css , selectors CSS Selectors: Attribute Selectors (web )Jan 16, 2017 54 css , selectors Using the “aria-current” Attribute (tin )Jan 14, 2017 53 html , aria , accessibility Presentation Attributes vs. Inline Styles (chr /css )Dec 23, 2016 52 html , svg , css , comparisons You Can Kinda Invent Your Own Weird Design Language With Attributes and Attribute Selectors (chr /css )Aug 17, 2016 51 html , css , selectors , naming Using the “title” Attribute to Help Users Predict Where They Are Going (nng )Jun 19, 2016 50 html , links , microcontent Using the HTML “lang” Attribute (tin /tpg )Jun 14, 2016 49 accessibility , html , localization The ARIA Roles Model Jul 13, 2015 48 html , aria , accessibility The HTML5 “longdesc” Attribute Is Finally Home Again (bur )Aug 3, 2014 47 html , accessibility The HTML5 “form” Attribute (cra )Aug 5, 2013 46 html , forms Selecting HTML5 “id” and “class” Names That Start With a Number in CSS (ben )Mar 15, 2013 45 html , selectors , css 6 Nifty, Time-Saving HTML Attributes Feb 27, 2013 44 html , forms HTML5 Forms Introduction and New Attributes (htm )Feb 26, 2013 43 introductions , forms , buttons , html Principles of Writing Consistent, Idiomatic HTML Nov 7, 2012 42 html , conventions , formatting , consistency , naming , sorting If It Had Remained the Irrelevant Attribute (bur )Feb 16, 2012 41 html , accessibility Multiple Attribute Values (chr /css )Dec 18, 2011 40 html , css , selectors Goodbye “time”, “datetime”, and “pubdate”—Hello “data” and “value” (htm )Nov 2, 2011 39 html , time , semantics What Makes for a Semantic Class Name? (chr /css )Aug 4, 2011 38 html , css , naming , semantics , examples Naming and Using IDs and Classes Properly (mat )Jul 25, 2011 37 html , css , naming , semantics The Actual Browser Problems With Unquoted Attributes (chr /css )Jul 14, 2011 36 html , support , browsers Unquoted Attribute Values in HTML and CSS (mat )Jun 13, 2011 35 html , css , javascript W3C HTML WG Decisions: “hidden”, “longdesc”, Table Summary, and the Myth of Hidden Metadata (bur )Apr 11, 2011 34 html , tables , standards , w3c Why Use Classes or IDs on the HTML Element? (chr /css )Jan 2, 2011 33 html , css , selectors , wordpress , modernizr Extending HTML5—Microdata (htm )Nov 23, 2010 32 microdata , semantics , html Extending HTML5—Microformats (htm )Aug 17, 2010 31 microformats , html , semantics HTML5 Custom Data Attributes (“data-*”) (htm )May 27, 2010 30 html , custom-data Remove the “hidden” Attribute (bur )Apr 26, 2010 29 html , hiding The Skinny on CSS Attribute Selectors (chr /css )Feb 13, 2010 28 css , selectors , html Cross Browser HTML5 Drag and Drop (zol )Jan 10, 2010 27 html , drag-and-drop , javascript , examples Don’t Misuse “rel” as a Custom Attribute (cra )Aug 28, 2009 26 html , metadata Absent Elements and Validation (htm )Aug 25, 2009 25 html , conformance Mandatory Alt Attribute Is Insignificant Feb 7, 2009 24 accessibility , html , images , alt-text Regex Matching Attribute Selectors (sib )Jul 29, 2008 23 css , selectors , regex The Difference Between ID and Class (chr /css )Jul 9, 2008 22 html , css , selectors Conforming “target” Attribute (lac )Apr 30, 2008 21 html , pop-ups , conformance What Beautiful HTML Code Looks Like (chr /css )Nov 1, 2007 20 html , semantics , conformance , formatting The “longdesc” Lottery (div )Sep 14, 2007 19 html , images , accessibility The Price of Omitting the Alt Sep 10, 2007 18 html , images , alt-text , accessibility Attribute Nightmare in IE (tob )Jan 11, 2007 17 internet-explorer , microsoft , browsers , javascript Elements, Tags, and Attributes (j9t )Sep 24, 2006 16 html , terminology Web Authoring Statistics Jan 25, 2006 15 studies , research , html , metadata , mime-types , http-headers , metrics The “ping” Attribute (nza )Jan 18, 2006 14 html , firefox , mozilla , browsers , privacy Class Attributes Are About More Than Styling (mic )Oct 19, 2005 13 html , semantics HTML Tags vs. Elements vs. Attributes Aug 30, 2005 12 html , terminology , comparisons Alt Attribute (Alt Tag, Alt Tooltip) (ann )Dec 16, 2004 11 html , images , alt-text , accessibility HTML Tables Cookbook Feb 6, 2003 10 html , tables The “alt” Attribute in HTML Jan 30, 2003 9 html , alt-text , images , accessibility A Touch of Class (tan )Dec 16, 2002 8 html , semantics , examples A Touch of Class Jul 7, 2002 7 html , css Important Change to the “link” Tag (div )Jun 2, 2002 6 html Underscores in Class and ID Names (mey )Mar 5, 2002 5 css , naming , support , browsers HTML in Retrospect—What Can We Learn From the Great Success, and the Great Failure? Nov 27, 2000 4 html , sgml , nesting , metadata , retrospectives Index DOT HTML: The Advanced HTML Reference Nov 8, 1998 3 html , support , browsers , overviews Why Attribute Values Should Always Be Quoted in HTML Jul 6, 1998 2 html Unquoted Attribute Value Validator (mat )1 tools , exploration , auditing , debugging , html , conformance