- Make accessibility part of it
- Iterate, iterate, iterate!
- Refer to WCAG and the ARIA Authoring Practices
- Awareness
- Design and UX
- Documentation
- Training
- Automated tests
- Tab through a page! Can you reach and operate all interactive controls?
- Focus management in widgets: into layers, escape to close, inertness/focus trap - https://egghead.io/lessons/css-focus-management-using-css-html-and-javascript
- Actually hiding vs. visually hiding - https://egghead.io/lessons/html-5-visible-vs-hidden
- Color contrast
- Text alternatives: image alt, form labels, accessible controls (icon buttons)
- Too much animation (see
prefers-reduced-motion
) - Semantic HTML, especially w/ JavaScript
- axe Chrome extension https://chrome.google.com/webstore/detail/axe/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US
- axe Firefox extension https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/
- axe-core (JavaScript) https://github.com/dequelabs/axe-core
- Screen readers: Voiceover OSX & iOS, NVDA, JAWS
- Learn more: https://egghead.io/courses/start-building-accessible-web-applications-today