The Web is an increasingly important resource in many aspects of life: education, employment, government, commerce, health care, recreation, and more. It is essential that the Web be accessible in order to provide equal access and equal opportunity to people with disabilities. An accessible Web can also help people with disabilities more actively participate in society.
- Legally required for Goverment Websites
- Apple was recently sued for not having iOS devices. Apple now has some of the best tablet accessibilty on the market.
- eglecting a major portion of the population by not catering to the needs of these users.
- Visually
- Blind
- Rely exclusively on screen readers
- Can not use mice to navigate the page
- Can not see information in images
- The page becomes linear usually following the order that your HTML is layed out.
- Color Blind
- Perceivable: because they cannot perceive (see) the difference between certain color combinations (reference)
- Impared
- Really poor vision use zoom
- Put labels with the inputs they are labeling. Having a label and the corrisponding input halfway across the page from one another can cause a lot of unnessasary scrolling for zoomed in screens.
- Really poor vision use zoom
- Blind
- Auditory
- Include captions to media with audio. Provide alternatives to video content.
- Motor
- Limited Motor Skils
- Navigate sites exclusively with Tab & Shift+Tab
- Limited Motor Skils
- Cognitive
- Making sure that things are structured well and have a clear logical flow.
- Limit jumping arround while requiring user input.
- Seizure
- Must avoid strobing, effects and optical illusions
- Windows
- Jaws (Expensive)
- NVDA (Free and open source)
- OSX
- Voice Over (CMD-F5)
- Chrome
- Testing: VOX
- Validation: Accessibility Developer Tools
- Browsers
- Visualization: Tota11y
- Symantically correct DOM layout
Always use the correct HTML tags for the given task. For example, if you are creating an element to trigger javascript use a
<button>
tag not an<a>
tag. - Focus management
- When dropdowns or menus are opened ensure focus is moved into thoes elements.
- Ensure when a modal opens the focus shifts to a specific button.
- When closing an element like a modal ensure that focus is restored to an apropreate element. Focus is completely lost and sent to the top of the document when the element that is focused is deleted. (Imagine the pain if you have a 30+ element fourm of inputs that the user has to tab through again).
- Don't hide the default focus border. (Eg http://www.cnn.com/ start hitting tab and see if you can figure out where your focus is).
- Following the W3 Accessible Rich Internet Applications Reccomendations
- This document is unfortunately large and unwieldly. Example implementations on stack overflow are also few and far between.
- Libraries
- Angular-Aria
Will automatically add many of the DOM elements that most developers neglect to add. Every
ng-onClick
will automatically get a keyboard listener for keyboard users.
- Angular-Aria
Will automatically add many of the DOM elements that most developers neglect to add. Every