Standards & practice / WAI-ARIA 1.2

Give interfaces meaning.
Build the behavior too.

Explore the roles, states and properties that connect a web interface to assistive technology. Start with native HTML, understand each attribute, and test the complete interaction.

W3C Recommendation · 6 June 2023. This learning reference uses the complete WAI-ARIA 1.2 inventory. It does not mix in newer draft additions or extension modules. Read the linked normative definitions for all conditions and exceptions. Verified against W3C on 15 September 2026.

Before adding an attribute

Choose the smallest reliable solution

01 / Native HTML

Start with what the browser knows

Use a button for an action, an anchor with href for navigation, and a labelled input for a form control. Native HTML supplies semantics and behavior together.

<button type="button">
  Save changes
</button>

02 / Meaning

Name, role, state and relationships

Provide a useful name, the right kind of control, its current state, and any relationships it needs. Avoid replacing visible labels with unrelated accessible names.

<button aria-expanded="false"
  aria-controls="visit-details">
  Visit details
</button>

The relationship and state describe an interaction; JavaScript must implement it.

03 / Complete interaction

Test the promise you make

A role does not add keyboard activation, focus management, validation or a visual design. Check expected keys, focus movement, names and state changes with assistive technology.

APG: roles, behavior and support

Know which document answers your question

WAI-ARIA: what it means

The normative specification defines roles, attributes, values and their requirements. This explorer provides excerpts and source characteristics from version 1.2.

WAI-ARIA Recommendation

ARIA in HTML: where it is allowed

The HTML authoring rules determine which roles and attributes may be used on each HTML element. Check the current rules alongside this version-pinned inventory.

ARIA in HTML · Recommendation, 11 August 2026

APG: how to build a pattern

The informative Authoring Practices Guide explains interaction patterns and offers examples. Patterns support implementation; they are not a separate conformance standard.

Browse APG patterns

Original A11y.mv demonstrations

See semantics change with behavior

Small teaching examples with native buttons. Each keeps focus on its trigger. Test the actual announcements with your browser and screen reader; wording and timing can vary.

The complete 1.2 inventory

Find a role or attribute

Open an entry for the W3C definition excerpt, characteristics, supported values where provided, and implementation guidance. Abstract roles must not be used in content. Deprecated entries are retained for understanding existing code.

Role categories can overlap: separator appears under both Widget and Document structure. The code role is grouped with Document structure here using its superclass; it is absent from the Recommendation’s category index. Attribute applicability and role-specific deprecations are preserved in the source characteristics.

142 entries · 94 roles, 10 states and 38 properties.

A practical review sequence

  1. Inspect the HTML. Choose a native control where it meets the task. Check the ARIA in HTML allowances before overriding semantics.
  2. Inspect the accessibility tree. Does each control expose the expected name, role and current state? Do related IDs resolve to the intended elements?
  3. Use the keyboard. Reach every control, operate it with its expected keys, and leave it. Check visible focus and logical focus return.
  4. Change the state. Open, close, select, validate and update. Confirm the visual interface and accessibility information stay synchronized.
  5. Use assistive technology. Check meaningful announcements and a complete task with the combinations your audience uses. Automated checks find some errors, not the whole experience.

Sources, scope and reuse

This independent learning reference includes material copied from or derived from Accessible Rich Internet Applications (WAI-ARIA) 1.2, W3C Recommendation, 6 June 2023. Copyright © 2013–2023 World Wide Web Consortium. W3C liability, trademark and permissive Software and Document License rules apply.

Changes by A11y.mv: selected definition excerpts, reformatted characteristics and value tables, grouping, search and filters, and clearly labelled original implementation guidance and examples. This page is a learning aid; the linked W3C Recommendation remains the normative source. It does not establish WCAG conformance or certify assistive-technology support.

WAI-ARIA 1.2 errata · ARIA in HTML · Informative APG · W3C liability notice · W3C trademark notice

W3C license and notice

W3C Software and Document License (2015-05-13)

This work is being provided by the copyright holders under the following license.

By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions.

Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications:

  • The full text of this NOTICE in a location viewable to users of the redistributed or derivative work.
  • Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included.
  • Notice of any changes or modifications, through a copyright statement on the new code or document such as “This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang).”

THIS WORK IS PROVIDED “AS IS,” AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.

COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT.

The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders.