Calendar controls, date pickers, date widgets, whatever you call them, however they are described, they follow the same basic principle — present the user with a calendar to enter a date (and sometimes a time). Chris Blakeley, CC BY-NC-ND 2.0 The native implementations come from browsers when authors use <input…
Early in 2017 I filed an issue against WAI-ARIA Authoring Practices (APG) requesting a change to the menu navigation pattern. Despite a great deal of feedback in agreement, it languished. In late 2017 I wrote Don’t Use ARIA Menu Roles for Site Nav and started actively campaigning against the APG…
TL;DR: Regardless of what accessibility conformance level you target, try to ensure that interactive controls are at least 44 by 44 pixels in size. Links in blocks of text are exempt. Overview In real life there is typically both a visual and tactile component to an interface. You have to…
I kind of missed it this year. I was presenting at YGLF and was invested in the other talks, so my annual tweet thread of my accessibility posts since the previous GAAD did not come out on time. Instead I filled up timelines last night. Below are eight tweets with…
I built this for me. An audience of one. A way to keep sharp the skills that I am not always able to use on a project. My requirements were simple: responsive (print, small screens), accessible (beyond screen readers), and kinda fun. Since it relies on a JSON data source…
Once major browsers started supporting <details> & <summary> developers immediately started to play with them to see what sorts of patterns they could enhance or replace. This is a good thing. Experimentation pushes boundaries, improves understanding. However, we need to be careful of christening this new-to-us interaction as the solution…
When a keyboard-only user or screen reader user comes to page that uses CSS to create a layout, there is a chance that what is on the screen does not match the flow of the page. In the posts HTML Source Order vs CSS Display Order and Source Order Matters…
Updated Intro Whether you use a <button> or <input type=”checkbox”> for your toggle depends on a few factors: Use <button> if: you can count on JavaScript being available, flipping the toggle has an immediate effect, the toggle will never have an indeterminate state. Go read Under-Engineered Toggles Too. Use <input…
The Web Content Accessibility Guidelines (WCAG) does a good job of providing supporting techniques to help reviewers determine if a specific case would violate a given Success Criterion (SC). WCAG 2.0, which became a recommendation at the end of 2008, has carried these techniques over to WCAG 2.1, finalized in…
HTML5 gives us form field validation for free. The problem is that the default messages browsers provide are not always useful and typically do not work with assistive technology. I made an example on CodePen that uses an email field (type=”email”), is required (required), and uses a pattern to restrict…
Original photo by Kevin Hale (photo no longer on Flickr), text added. CC BY-SA 2.0. The pun in the title is that some people pronounce the a11y numeronym as “alley”. That makes the full title sound like uncanny valley, the concept of human-looking things seeming almost, but not quite, human…
When Rian Rietveld resigned from the WordPress accessibility team on October 9, I decided to track the fallout in an ongoing Twitter thread. The subsequent weeks and days proved to be wonderful insight into how a project can suffer when accessibility is not built in from the start. When subject…