ARIA is a set of special accessibility attributes which can be added to any markup, but is especially suited to HTML. The
role attribute defines a specific role for type of object (such as an article, alert, slider or a button). Additional ARIA attributes provide other useful properties, such as a description for a form or the current width of a progressbar. ARIA attributes can also be used to specify active or disabled state for objects (especially buttons).
aria-hidden attribute, which tells screenreaders if they should ignore the element, should not be confused with the
hidden attribute in HTML5, which tells the browser not to display the element.
ARIA is implemented in most popular browsers and screen readers. However, implementations vary and older technologies don't support it well (if at all). Use either "safe" ARIA that degrades gracefully, or ask users to upgrade to newer technology.
- Introduction to ARIA
- A quick introduction to making dynamic content accessible with ARIA. See also the classic ARIA intro by Gez Lemon, from 2008.
- Web Applications and ARIA FAQ
- Answers common questions about WAI-ARIA and why it's needed to make web applications accessible.
- Videos of Screen Readers Using ARIA
- See both real and simplified examples from around the web, including "before" and "after" ARIA videos.
- Using ARIA
- A practical guide for developers. It suggests what ARIA attributes to use on HTML elements. Suggestions are based on implementation realities.
Simple ARIA Enhancements
- Enhancing Page Navigation with ARIA Landmarks
- A nice intro to using ARIA landmarks to improve web page navigation for screen reader users. See also, ARIA landmark implementation notes and examples on real sites (updated as of July 2011).
- Improving Form Accessibility
- ARIA is not just for dynamic content! Learn how to improve accessibility of HTML forms using additional ARIA attributes.
- Live regions (work-in-progress)
- Live regions provide suggestions to screen readers about how to handle changes to the contents of a page.
- Using ARIA Live Regions to Announce Content Changes
- A quick summary of live regions, by the makers of JAWS screen reader software. Live regions are also supported by NVDA with Firefox, and VoiceOver with Safari.
ARIA for Scripted Widgets
- Style Guide for Keyboard Navigation
- A challenge with ARIA is getting developers to implement consistent behavior — clearly best for users. This style guide describes the keyboard interface for common widgets.
- Widget Techniques, Tutorials, and Examples
- Need a slider, a menu, or another kind of widget? Find resources here.
- If you're starting a new project, choose a UI widget library with ARIA support already built-in. Warning: this is from 2009 — content should be moved to an MDN page where it can be updated.
- Role attribute-ARIA
- Purpose of role attribute.
- ARIA Examples Library
- A set of barebones example files which are easy to learn from.
- Accessible JS Widget Library Demos
- jQuery, YUI
- WAI-ARIA Activities Overview at W3C
- Authoritative Overview of WAI-ARIA Standardization efforts by the Web Accessibility Initiative (WAI)
- WAI-ARIA Specification
- The W3C specification itself, useful as a reference. Note that, at this stage, it is important to test compatibility, as implementations are still inconsistent.
- WAI-ARIA Authoring Practices
Like the W3C WAI-ARIA specification, the official best practices represents a future ideal — a day when authors can rely on consistent ARIA support across browsers and screen readers. The W3C documents provide an in-depth view of ARIA.
For now, web developers implementing ARIA should maximize compatibility. Use best practices docs and examples based on current implementations.
- Open AJAX Accessibility Task Force
- The Open AJAX effort centers around developing tools, sample files, and automated tests for ARIA.
- Under Construction: WCAG 2.0 ARIA Techniques
- The community needs a complete set of WCAG techniques for WAI-ARIA + HTML, so that organizations can be comfortable claiming their ARIA-enabled content is WCAG compliant. This is important when regulations or policies are based on WCAG.
ARIA information on blogs tends to get out of date quickly. Still, there is some great info out there from other developers making ARIA work today.
Following talks are a great way to understand ARIA: