Categories
HTML Accessibility

The hidden world of aria-hidden

hides in the light An interesting feature of aria-hidden is that it hides stuff from screen reader users, but its effects are hidden from everyone else. Unless you going looking for it and understand what it does, you will have no idea how powerful it is and what a detrimental effect it can have if […]

Categories
HTML Accessibility

HTML Developers: Please Consider – in the year of 2021

ARIA is an amazing technology, it allows developers to add meaning to meaningless HTML or override meaning on HTML that is being repurposed and sometimes misused, so that users who rely upon the meaning of HTML, as implemented in browsers, can understand and interact with HTML User Interfaces successfully. ARIA allows developers to re-invent and […]

Categories
HTML Accessibility

Short note on role none or presentation?

Updated from Short note on role none or presentation? none or presentation? Do either work across browsers and Screen Readers? Details on Use of role=presentation or role=none Short answer is: All modern browsers support both role=”none” and role=”presentation” Internet Explorer 11 supports role=”presentation” only JAWS 2021 works around IE’s lack and so supports role=”none” NVDA […]

Categories
HTML Accessibility

A decade + a year of heading backwards

Originally published February 2020, updated today. It’s actually been longer (I remember being introduced to the outline algorithm in 2007), but 11 years is a number worth signifying. In 2020 2021 as it was in 2010 the HTML specification defines an outline algorithm and specifies how it affects heading rank regardless of the hard coded […]

Categories
HTML Accessibility

re-upped: Short note on the disabled/aria-disabled attributes

Note: originally published on my now defunct codepen blog. The HTML disabled attribute can be used on a limited set of HTML elements: button, input, select, textarea, option, optgroup, fieldset, or form-associated custom elements (currently supported in Chrome only) What disabled does When added to a control: <input type=”text” disabled> A user: Cannot operate or […]

Categories
HTML Accessibility

re-upped: placeholder – the piss-take label

The reasons why use of the placeholder attribute as the only means of providing a user readable prompt for a form control is deficient UX, are voluminous. It is frustrating having to rehash this discussion endlessly. I first wrote about placeholder back in 2011, and included a note, later a warning, about its use in […]

Categories
HTML Accessibility

aria-description: By Public Demand and to Thunderous Applause

aria-description is the ARIA attribute you wanted, it makes adding a description (for screen reader users ONLY) so much simpler. The aria-description attribute is similar to aria-label in that both provide a flat string to associate with the element, but a label should be concise, whereas a description is intended to provide more verbose information. […]

Categories
HTML Accessibility

hasPopup hasPoop

Update: 09/02/2023 – retested in latest JAWS and NVDA, no change to results reported in 2021 In theory aria-haspopup could be really useful as a hint to screen reader peeps as to what type of content will pop up when they activate a control. The Theory values for aria-haspopup Value Description false (default) Indicates the […]

Categories
HTML Accessibility

A simple custom

For whatever reason some people don’t like the standard HTML checkbox and radio button, they seek to jazz ’em up and in the process the often jizz up the usability/accessibility of these controls. There are some good efforts out there to win over developers/designers to using native controls, or minimally customized controls. Here I provide […]

Categories
HTML Accessibility

(the return of) Tables, Tequila and Beer

This article is republished here with updates as the source article can no longer be updated 🙁 In a 2018 article tables and beers I explained how browsers correctly represent table semantics of simple tables with either a row or column of headers. Thus alleviating the need to use the scope attribute to identify a […]