Taking on Accessibility Challenges in Complex Web Applications
Shawn Lauriat (@slauriat)
Software Engineer, Google Docs Accessibility
Slides: http://goo.gl/r6zkt
Overview
Context
Key Terms:
Keyboard Navigation
Things to try:
Now enable a screen reader and try again.
Keyboard Shortcuts
Pros:
Cons:
Rethink Interfaces
Further UI Practices
Semantic Markup: HTML
10% Developer Effort
90% for free
Semantic Markup: HTML
Available Elements
Sections | 15 |
Grouping content | 13 |
Text-level semantics | 28 |
Edits | 2 |
Embedded content | 12 |
Tabular data | 10 |
Forms | 15 |
Interactive | 5 |
"Authors are strongly encouraged to view the div element as an element of last resort, for when no other element is suitable."
4.5.13 The div element
Semantic Markup: ARIA
w3.org/TR/wai-aria-practices
60%
for free
40%
Developer Effort
Semantic Markup: ARIA
Semantic markup: ARIA
Checkbox example:
<li class="checkbox"
role="checkbox"
aria-checked="false"
tabindex="0">
My fancy checkbox
</li>
Improvising
20%
for free
80%
Developer Effort
Improvising
Sometimes:
Improvising: The Need
Improvising
Pros
Cons
Tools: Education
Tools: Design & UX Folks
All Design &
User Experience
Tools: Browsers
Tools: Browser Extensions
Tools: Suggestions
(Don't Fear) The Reader
Q. Want lightweight?
A. ChromeVox
chromevox.com
Q. Linux?
A. Try Orca.
Q. MacOS?
A. Try VoiceOver:
Enable via Cmd + F5
Q. Windows?
A. Try NVDA:
nvda-project.org
Optimism for the platform
Indie UI - Editor's Draft
ARIA++
Recap
Questions?