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.
94 roles including 12 abstract roles48 states & properties3 working demonstrations
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.
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.
The normative specification defines roles, attributes, values and their requirements. This explorer provides excerpts and source characteristics from version 1.2.
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.
The informative Authoring Practices Guide explains interaction patterns and offers examples. Patterns support implementation; they are not a separate conformance standard.
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.
1. Disclosure
Use Enter or Space on the button. Visibility and aria-expanded change together. A native details/summary element is another good option for many disclosures.
The workshop starts at 10:00. The entrance is beside reception.
Activate the bookmark button. Its name stays stable while aria-pressed communicates the selected state. This example changes only the current page session.
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.
No entries match. Try a shorter term or reset the filters.
A type of live region with important, and usually time-sensitive, information. See related alertdialog and status.
In practice — A11y.mv: Use for important, time-sensitive changes. Avoid making ordinary confirmations or large regions assertive live announcements.
Source characteristics
Superclass Role
section
Subclass Roles
alertdialog
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
Name From
author
Implicit Value for Role
Default for aria-live is assertive. Default for aria-atomic is true.
A type of dialog that contains an alert message, where initial focus goes to an element within the dialog. See related alert and dialog.
In practice — A11y.mv: Reserve for interruptions that need a response. Plan initial focus and a way to close or complete the dialog; use the APG alert dialog pattern.
Source characteristics
Superclass Role
alert; dialog
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-modal; aria-owns; aria-relevant; aria-roledescription
A structure containing one or more focusable elements requiring user input, such as keyboard or gesture events, that do not follow a standard interaction pattern supported by a widget role.
In practice — A11y.mv: Use only for an interaction that needs an application-specific keyboard model. Applying it to an ordinary page can change screen-reader navigation expectations.
A section of a page that consists of a composition that forms an independent part of a document, page, or site.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
document
Related Concepts
<article> in [HTML]
Supported States and Properties
aria-posinset; aria-setsize
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A landmark that contains mostly site-oriented content, rather than page-specific content.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
landmark
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A section of content that is quoted from another source.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Related Concepts
<blockquote> in [HTML]
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
An input that allows for user-triggered actions when clicked or pressed. See related link.
In practice — A11y.mv: Start with a native button. Its visible text supplies a name, and Enter and Space work without recreating button keyboard behavior.
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
Visible content that names, and may also describe, a figure, table, grid, or treegrid.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Related Concepts
<caption> in [HTML] <figcaption> in [HTML]
Required Context Role
figure; grid; table; treegrid
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-live; aria-owns; aria-relevant; aria-roledescription
A cell in a tabular container. See related gridcell.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A checkable input that has three possible values: true, false, or mixed.
In practice — A11y.mv: Prefer input type="checkbox" with an associated label. Use its checked and indeterminate DOM properties rather than duplicating native checked semantics with ARIA.
A section whose content represents a fragment of computer code.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Related Concepts
<code> in [HTML]
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-live; aria-owns; aria-relevant; aria-roledescription
A cell containing header information for a column.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
An input that controls another element, such as a listbox or grid, that can dynamically pop up to help the user set the value of the input.
In practice — A11y.mv: Treat this as a coordinated input and popup interaction. Check popup role, expanded state, relationships, focus, text editing and escape behavior together.
A form of widget that performs an action but does not receive input data.
In practice — A11y.mv: This is an abstract role used by the specification’s role model. Authors must not put it in a role attribute. Choose a concrete role and implement its behavior instead.
Source characteristics
Is Abstract
True
Superclass Role
widget
Subclass Roles
button; link; menuitem
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A landmark that is designed to be complementary to the main content at a similar level in the DOM hierarchy, but remaining meaningful when separated from the main content.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
landmark
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A widget that may contain navigable descendants or owned children.
In practice — A11y.mv: This is an abstract role used by the specification’s role model. Authors must not put it in a role attribute. Choose a concrete role and implement its behavior instead.
Source characteristics
Is Abstract
True
Superclass Role
widget
Subclass Roles
grid; select; spinbutton; tablist
Supported States and Properties
aria-activedescendant; aria-disabled
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A landmark that contains information about the parent document.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
landmark
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A definition of a term or concept. See related term.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A deletion contains content that is marked as removed or content that is being suggested for removal. See related insertion.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Related Concepts
<del> in [HTML]
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-live; aria-owns; aria-relevant; aria-roledescription
A dialog is a descendant window of the primary window of a web application. For HTML pages, the primary application window is the entire web document, i.e., the body element.
In practice — A11y.mv: Prefer the HTML dialog element when appropriate. Implement a visible name, a close action, initial focus, and focus return; modal behavior needs more than a role.
Source characteristics
Superclass Role
window
Subclass Roles
alertdialog
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-modal; aria-owns; aria-relevant; aria-roledescription
[Deprecated in ARIA 1.2] A list of references to members of a group, such as a static table of contents.
In practice — A11y.mv: Deprecated in ARIA 1.2. For a table of contents or ordinary references, use a semantic list and links.
Source characteristics
Superclass Role
list
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
An element containing content that assistive technology users may want to browse in a reading mode.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
structure
Subclass Roles
article
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
One or more emphasized characters. See related strong.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Related Concepts
<em> in [HTML]
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-live; aria-owns; aria-relevant; aria-roledescription
A scrollable list of articles where scrolling may cause articles to be added to or removed from either end of the list.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
list
Required Owned Elements
article
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A perceivable section of content that typically contains a graphical document, images, code snippets, or example text. The parts of a figure MAY be user-navigable.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Related Concepts
<figure> in [HTML]
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A landmark region that contains a collection of items and objects that, as a whole, combine to create a form. See related search.
In practice — A11y.mv: Use native form semantics. Naming a form creates a useful landmark when the form is important enough to navigate to separately.
Source characteristics
Superclass Role
landmark
Base Concept
<form> in [HTML]
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A nameless container element that has no semantic meaning on its own.
In practice — A11y.mv: This role has no useful independent name. Keep meaningful controls and text in semantic HTML rather than adding aria-label to generic containers.
Source characteristics
Superclass Role
structure
Related Concepts
HTML div, HTML span
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-live; aria-owns; aria-relevant
A composite widget containing a collection of one or more rows with one or more cells where some or all cells in the grid are focusable by using methods of two-dimensional navigation, such as directional arrow keys.
In practice — A11y.mv: Use only when you implement an interactive grid keyboard model. A static table should normally stay a native table.
Source characteristics
Superclass Role
composite; table
Subclass Roles
treegrid
Base Concept
<table> in [HTML]
Required Owned Elements
row; rowgroup → row
Supported States and Properties
aria-multiselectable; aria-readonly
Inherited States and Properties
aria-activedescendant; aria-atomic; aria-busy (state); aria-colcount; aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription; aria-rowcount
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
A set of user interface objects that is not intended to be included in a page summary or table of contents by assistive technologies.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Subclass Roles
row; select; toolbar
Related Concepts
<fieldset> in [HTML]
Supported States and Properties
aria-activedescendant; aria-disabled
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
In practice — A11y.mv: Prefer h1 through h6. A custom heading role also needs a meaningful aria-level and a sensible place in the heading hierarchy.
Source characteristics
Superclass Role
sectionhead
Related Concepts
<h1>, <h2>, <h3>, <h4>, <h5>, and <h6> in [HTML]
Required States and Properties
aria-level
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A container for a collection of elements that form an image.
In practice — A11y.mv: Prefer img with a suitable alt attribute for an image. For an ARIA image grouping, the accessible name must describe the combined graphic.
Source characteristics
Superclass Role
section
Related Concepts
<img> in [HTML]
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
In practice — A11y.mv: This is an abstract role used by the specification’s role model. Authors must not put it in a role attribute. Choose a concrete role and implement its behavior instead.
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
An insertion contains content that is marked as added or content that is being suggested for addition. See related deletion.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Related Concepts
<ins> in [HTML]
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-live; aria-owns; aria-relevant; aria-roledescription
A perceivable section containing content that is relevant to a specific, author-specified purpose and sufficiently important that users will likely want to be able to navigate to the section easily and to have it listed in a summary of the page. Such a page summary could be generated dynamically by a user agent or assistive technology.
In practice — A11y.mv: This is an abstract role used by the specification’s role model. Authors must not put it in a role attribute. Choose a concrete role and implement its behavior instead.
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
An interactive reference to an internal or external resource that, when activated, causes the user agent to navigate to that resource. See related button.
In practice — A11y.mv: Use an anchor with a real href for navigation. Changing a role does not add a destination or the expected browser link actions.
Source characteristics
Superclass Role
command
Related Concepts
<a> in [HTML]; <link> in [HTML]
Supported States and Properties
aria-disabled; aria-expanded; aria-haspopup
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A section containing listitem elements. See related listbox.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Subclass Roles
directory; feed
Base Concept
<ol> in [HTML]; <ul> in [HTML]
Required Owned Elements
listitem
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A widget that allows the user to select one or more items from a list of choices. See related combobox and list.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Subclass Roles
treeitem
Base Concept
<li> in [HTML]
Required Context Role
directory; list
Supported States and Properties
aria-level; aria-posinset; aria-setsize
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A type of live region where new information is added in meaningful order and old information may disappear. See related marquee.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A landmark containing the main content of a document.
In practice — A11y.mv: Prefer main for the main page content. Keep the primary main region easy to discover in landmark navigation.
Source characteristics
Superclass Role
landmark
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A type of live region where non-essential information changes frequently. See related log.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
Content that represents a mathematical expression.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
An element that represents a scalar measurement within a known range, or a fractional value. See related progressbar.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
range
Related Concepts
<meter> in [HTML]
Required States and Properties
aria-valuenow
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription; aria-valuemax; aria-valuemin; aria-valuetext
Name From
author
Accessible Name Required
True
Children Presentational
True
Implicit Value for Role
Default for aria-valuemin is 0. Default for aria-valuemax is 100.
A type of widget that offers a list of choices to the user.
In practice — A11y.mv: Use a menu for an application-like list of commands with its full keyboard pattern. Ordinary website navigation usually needs links in a nav element.
Source characteristics
Superclass Role
select
Subclass Roles
menubar
Related Concepts
list
Required Owned Elements
group → menuitem; group → menuitemradio; group → menuitemcheckbox; menuitem; menuitemcheckbox; menuitemradio
Inherited States and Properties
aria-activedescendant; aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-orientation; aria-owns; aria-relevant; aria-roledescription
A presentation of menu that usually remains visible and is usually presented horizontally.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
menu
Related Concepts
toolbar
Required Owned Elements
group → menuitem; group → menuitemradio; group → menuitemcheckbox; menuitem; menuitemcheckbox; menuitemradio
Inherited States and Properties
aria-activedescendant; aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-orientation; aria-owns; aria-relevant; aria-roledescription
An option in a set of choices contained by a menu or menubar.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A menuitem with a checkable state whose possible values are true, false, or mixed.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
menuitem
Subclass Roles
menuitemradio
Related Concepts
menuitem
Required Context Role
group; menu; menubar
Required States and Properties
aria-checked
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-expanded (state); aria-flowto; aria-grabbed (state); aria-haspopup; aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-posinset; aria-relevant; aria-roledescription; aria-setsize
A checkable menuitem in a set of elements with the same role, only one of which can be checked at a time.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
menuitemcheckbox
Related Concepts
menuitem
Required Context Role
group; menu; menubar
Inherited States and Properties
aria-atomic; aria-busy (state); aria-checked (state) (required); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-expanded (state); aria-flowto; aria-grabbed (state); aria-haspopup; aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-posinset; aria-relevant; aria-roledescription; aria-setsize
A landmark containing a collection of navigational elements (usually links) for navigating the document or related documents.
In practice — A11y.mv: Prefer nav for groups of navigation links. Give multiple navigation regions distinct, useful names when their purpose differs.
Source characteristics
Superclass Role
landmark
Related Concepts
<nav> in [HTML]
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
An element whose implicit native role semantics will not be mapped to the accessibility API. See synonym presentation.
In practice — A11y.mv: This removes some semantics, not the element or all its descendants. It is not a way to hide content; check the presentation conflict-resolution rules.
A section whose content is parenthetic or ancillary to the main content of the resource.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
input
Subclass Roles
treeitem
Base Concept
<option> in [HTML]
Related Concepts
listitem
Required Context Role
group; listbox
Required States and Properties
aria-selected
Supported States and Properties
aria-checked; aria-posinset; aria-setsize
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Related Concepts
<p> in [HTML]
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-live; aria-owns; aria-relevant; aria-roledescription
An element whose implicit native role semantics will not be mapped to the accessibility API. See synonym none.
In practice — A11y.mv: This removes some semantics, not the element or all its descendants. It is not a way to hide content; check the presentation conflict-resolution rules.
Source characteristics
Superclass Role
structure
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-live; aria-owns; aria-relevant; aria-roledescription
An element that displays the progress status for tasks that take a long time.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
range; widget
Related Concepts
status
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription; aria-valuemax; aria-valuemin; aria-valuenow; aria-valuetext
Name From
author
Accessible Name Required
True
Children Presentational
True
Implicit Value for Role
Default for aria-valuemin is 0. Default for aria-valuemax is 100.
A checkable input in a group of elements with the same role, only one of which can be checked at a time.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
input
Related Concepts
<input[type="radio"]> in [HTML]
Required States and Properties
aria-checked
Supported States and Properties
aria-posinset; aria-setsize
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
In practice — A11y.mv: This is an abstract role used by the specification’s role model. Authors must not put it in a role attribute. Choose a concrete role and implement its behavior instead.
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A landmark containing content that is relevant to a specific, author-specified purpose and sufficiently important that users will likely want to be able to navigate to the section easily and to have it listed in a summary of the page. Such a page summary could be generated dynamically by a user agent or assistive technology.
In practice — A11y.mv: Use a named section when a region helps people navigate. Too many named regions can make the landmark list harder to use.
Source characteristics
Superclass Role
landmark
Related Concepts
<section> in [HTML]
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
In practice — A11y.mv: This is an abstract role used by the specification’s role model. Authors must not put it in a role attribute. Choose a concrete role and implement its behavior instead.
Source characteristics
Is Abstract
True
Subclass Roles
structure; widget; window
Supported States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (Global use deprecated in ARIA 1.2); aria-dropeffect; aria-errormessage (Global use deprecated in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (Global use deprecated in ARIA 1.2); aria-hidden (state); aria-invalid (state) (Global use deprecated in ARIA 1.2); aria-keyshortcuts; aria-label (Except where prohibited); aria-labelledby (Except where prohibited); aria-live; aria-owns; aria-relevant; aria-roledescription
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
aria-activedescendant; aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A structure containing one or more row elements in a tabular container.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
structure
Base Concept
<tbody>, <tfoot> and <thead>in [HTML]
Required Context Role
grid; table; treegrid
Required Owned Elements
row
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
A graphical object that controls the scrolling of content within a viewing area, regardless of whether the content is fully displayed within the viewing area.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
aria-atomic; aria-busy (state); aria-current (state); aria-describedby; aria-details; aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription; aria-valuetext
Name From
author
Accessible Name Required
False
Children Presentational
True
Implicit Value for Role
Default for aria-orientation is vertical. Default for aria-valuemin is 0. Default for aria-valuemax is 100.
A landmark region that contains a collection of items and objects that, as a whole, combine to create a search facility. See related form and searchbox.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
landmark
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A type of textbox intended for specifying search criteria. See related textbox and search.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
A renderable structural containment unit in a document or application.
In practice — A11y.mv: This is an abstract role used by the specification’s role model. Authors must not put it in a role attribute. Choose a concrete role and implement its behavior instead.
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A structure that labels or summarizes the topic of its related section.
In practice — A11y.mv: This is an abstract role used by the specification’s role model. Authors must not put it in a role attribute. Choose a concrete role and implement its behavior instead.
Source characteristics
Is Abstract
True
Superclass Role
structure
Subclass Roles
columnheader; heading; rowheader; tab
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A form widget that allows the user to make selections from a set of choices.
In practice — A11y.mv: This is an abstract role used by the specification’s role model. Authors must not put it in a role attribute. Choose a concrete role and implement its behavior instead.
Source characteristics
Is Abstract
True
Superclass Role
composite; group
Subclass Roles
listbox; menu; radiogroup; tree
Supported States and Properties
aria-orientation
Inherited States and Properties
aria-activedescendant; aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A divider that separates and distinguishes sections of content or groups of menuitems.
In practice — A11y.mv: The behavior depends on whether the separator is focusable. A movable splitter needs range values, a name where required, and keyboard resizing.
Source characteristics
Superclass Role
structure (if not focusable); widget (if focusable)
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
Name From
author
Children Presentational
True
Implicit Value for Role
Default for aria-orientation is horizontal. Default for aria-valuemin is 0. Default for aria-valuemax is 100.
An input where the user selects a value from within a given range.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
A form of range that expects the user to select from among discrete choices.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
aria-activedescendant; aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state); aria-dropeffect; aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
Name From
author
Accessible Name Required
True
Implicit Value for Role
Default for aria-valuemin is that there is no minimum value. Default for aria-valuemax is that there is no maximum value. Default for aria-valuenow is 0
A type of live region whose content is advisory information for the user but is not important enough to justify an alert, often but not necessarily presented as a status bar.
In practice — A11y.mv: Create the status region before updating its text. Keep ordinary feedback concise, and leave focus on the control the person is using.
Source characteristics
Superclass Role
section
Subclass Roles
timer
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
Name From
author
Implicit Value for Role
Default for aria-live is polite. Default for aria-atomic is true.
Content that is important, serious, or urgent. See related emphasis.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Related Concepts
<strong> in [HTML]
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-live; aria-owns; aria-relevant; aria-roledescription
In practice — A11y.mv: This is an abstract role used by the specification’s role model. Authors must not put it in a role attribute. Choose a concrete role and implement its behavior instead.
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
One or more subscripted characters. See related superscript.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Related Concepts
<sub> and <sup> in [HTML]
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-live; aria-owns; aria-relevant; aria-roledescription
One or more superscripted characters. See related superscript.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Related Concepts
<sub> and <sup> in [HTML]
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-live; aria-owns; aria-relevant; aria-roledescription
A grouping label providing a mechanism for selecting the tab content that is to be rendered to the user.
In practice — A11y.mv: Implement the whole tabs pattern: tablist, tabs, associated panels, selection, and keyboard movement. A role on one button is insufficient.
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A section containing data arranged in rows and columns. See related grid.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Subclass Roles
grid
Base Concept
<table> in [HTML]
Required Owned Elements
row; rowgroup → row
Supported States and Properties
aria-colcount; aria-rowcount
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A list of tab elements, which are references to tabpanel elements.
In practice — A11y.mv: Decide whether focus movement also activates a panel. Follow the APG tabs keyboard model and keep one tab in the page Tab sequence.
Source characteristics
Superclass Role
composite
Required Owned Elements
tab
Supported States and Properties
aria-multiselectable; aria-orientation
Inherited States and Properties
aria-activedescendant; aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A container for the resources associated with a tab, where each tab is contained in a tablist.
In practice — A11y.mv: Associate the panel with its tab. Decide whether the panel needs a Tab stop so its content is reachable, especially when it has no focusable content.
Source characteristics
Superclass Role
section
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A word or phrase with a corresponding definition. See related definition.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Related Concepts
<dfn> in [HTML]
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A type of input that allows free-form text as its value.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
input
Subclass Roles
searchbox
Related Concepts
<textarea> in [HTML]; <input[type="text"]> in [HTML]
An element that represents a specific point in time.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Related Concepts
<time> in [HTML]
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A type of live region containing a numerical counter which indicates an amount of elapsed time from a start point, or the time remaining until an end point.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
status
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A collection of commonly used function buttons or controls represented in compact visual form.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
group
Related Concepts
menubar
Supported States and Properties
aria-orientation
Inherited States and Properties
aria-activedescendant; aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A contextual popup that displays a description for an element.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
section
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
A widget that allows the user to select one or more items from a hierarchically organized collection.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
A grid whose rows can be expanded and collapsed in the same manner as for a tree.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
An option item of a tree. This is an element within a tree that may be expanded or collapsed if it contains a sub-level group of tree item elements.
In practice — A11y.mv: Check the native HTML element first, then the name, required relationships and supported attributes for this role. Add the expected interaction if it is interactive; a role does not implement behavior.
Source characteristics
Superclass Role
listitem; option
Required Context Role
group; tree
Supported States and Properties
aria-expanded; aria-haspopup
Inherited States and Properties
aria-atomic; aria-busy (state); aria-checked (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-level; aria-live; aria-owns; aria-posinset; aria-relevant; aria-roledescription; aria-selected (state) (required); aria-setsize
An interactive component of a graphical user interface (GUI).
In practice — A11y.mv: This is an abstract role used by the specification’s role model. Authors must not put it in a role attribute. Choose a concrete role and implement its behavior instead.
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
In practice — A11y.mv: This is an abstract role used by the specification’s role model. Authors must not put it in a role attribute. Choose a concrete role and implement its behavior instead.
Source characteristics
Is Abstract
True
Superclass Role
roletype
Subclass Roles
dialog
Supported States and Properties
aria-modal
Inherited States and Properties
aria-atomic; aria-busy (state); aria-controls; aria-current (state); aria-describedby; aria-details; aria-disabled (state) (deprecated on this role in ARIA 1.2); aria-dropeffect; aria-errormessage (deprecated on this role in ARIA 1.2); aria-flowto; aria-grabbed (state); aria-haspopup (deprecated on this role in ARIA 1.2); aria-hidden (state); aria-invalid (state) (deprecated on this role in ARIA 1.2); aria-keyshortcuts; aria-label; aria-labelledby; aria-live; aria-owns; aria-relevant; aria-roledescription
Identifies the currently active element when DOM focus is on a composite widget, combobox, textbox, group, or application.
In practice — A11y.mv: DOM focus stays on the owning element while the active item is identified by ID. Implement the required relationships, keyboard updates and visible active indication.
Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.
In practice — A11y.mv: Consider whether the whole region or just its changed content is useful feedback. Keep the region small enough to avoid repeated long announcements.
Source characteristics
Used in Roles
All elements of the base markup
Value
true/false
Values from the specification
false (default)
Assistive technologies will present only the changed node or nodes.
true
Assistive technologies will present the entire changed region as a whole, including the author-defined label if one exists.
Indicates whether inputting text could trigger display of one or more predictions of the user's intended value for a combobox, searchbox, or textbox and specifies how predictions would be presented if they were made.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Source characteristics
Used in Roles
combobox; textbox
Inherits into Roles
searchbox
Value
token
Values from the specification
inline
When a user is providing input, text suggesting one way to complete the provided input may be dynamically inserted after the caret.
list
When a user is providing input, an element containing a collection of values that could complete the provided input may be displayed.
both
When a user is providing input, an element containing a collection of values that could complete the provided input may be displayed. If displayed, one value in the collection is automatically selected, and the text needed to complete the automatically selected value appears after the caret in the input.
none (default)
When a user is providing input, an automatic suggestion that attempts to predict how the user intends to complete the input is not displayed.
Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.
In practice — A11y.mv: Set and clear this around relevant updates. Leaving a region busy can prevent useful changes from being communicated promptly.
Indicates the current "checked" state of checkboxes, radio buttons, and other widgets. See related aria-pressed and aria-selected.
In practice — A11y.mv: Respect the role’s permitted values. Prefer native checked behavior where HTML already provides it; mixed is not valid for a radio or switch.
Source characteristics
Used in Roles
checkbox; menuitemcheckbox; option; radio; switch
Inherits into Roles
menuitemradio; switch; treeitem
Value
tristate
Values from the specification
false
The element supports being checked but is not currently checked.
mixed
Indicates a mixed mode value for a tri-state checkbox or menuitemcheckbox.
Defines the total number of columns in a table, grid, or treegrid. See related aria-colindex.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Defines an element's column index or position with respect to the total number of columns within a table, grid, or treegrid. See related aria-colcount and aria-colspan.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid. See related aria-colindex and aria-rowspan.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Identifies the element (or elements) whose contents or presence are controlled by the current element. See related aria-owns.
In practice — A11y.mv: Reference the element whose content or presence is controlled. This relationship does not create a keyboard shortcut or implement the behavior.
Identifies the element (or elements) that describes the object. See related aria-labelledby.
In practice — A11y.mv: Use for supporting instructions or descriptions, while keeping the primary label concise. Check that every referenced ID exists.
Source characteristics
Related Concepts
<label> in [HTML]; online help; HTML table cell headers
Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable. See related aria-hidden and aria-readonly.
In practice — A11y.mv: This communicates a disabled state; it does not block click or keyboard activation. Native disabled is usually simpler when its behavior suits the control.
[Deprecated in ARIA 1.1] Indicates what functions can be performed when a dragged object is released on the drop target.
In practice — A11y.mv: Deprecated in ARIA 1.1. Describe and implement a usable move/copy workflow instead of relying on this legacy property.
Source characteristics
Used in Roles
All elements of the base markup
Value
token list
Values from the specification
copy
A duplicate of the source object will be dropped into the target.
execute
A function supported by the drop target is executed, using the drag source as an input.
link
A reference or shortcut to the dragged object will be created in the target object.
move
The source object will be removed from its current location and dropped into the target.
none (default)
No operation can be performed; effectively cancels the drag operation if an attempt is made to drop on this object. Ignored if combined with any other token value. e.g., 'none copy' is equivalent to a 'copy' value.
popup
There is a popup menu or dialog that allows the user to choose one of the drag operations (copy, move, link, execute) and any other drag functionality, such as cancel.
Identifies the element that provides an error message for an object. See related aria-invalid and aria-describedby.
In practice — A11y.mv: Use with the invalid state when the linked error is relevant. Keep the error visible and the referenced ID valid; verify the complete form experience.
Source characteristics
Used in Roles
application; checkbox; combobox; gridcell; listbox; radiogroup; slider; spinbutton; textbox; tree
Identifies the next element (or elements) in an alternate reading order of content which, at the user's discretion, allows assistive technology to override the general default of reading in document source order.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Indicates whether the element is exposed to an accessibility API. See related aria-disabled.
In practice — A11y.mv: Do not hide focusable controls or their ancestors from assistive technology. Hiding accessibility semantics does not visually hide content or remove keyboard focus.
Source characteristics
Used in Roles
All elements of the base markup
Value
true/false/undefined
Values from the specification
false
The element is exposed to the accessibility API as if it was rendered.
true
The element is hidden from the accessibility API.
undefined (default)
The element's hidden state is determined by the user agent based on whether it is rendered.
Indicates the entered value does not conform to the format expected by the application. See related aria-errormessage.
In practice — A11y.mv: Set it when validation has actually identified an error. Explain the error in visible text and provide a programmatic relationship to that explanation.
Source characteristics
Used in Roles
application; checkbox; combobox; gridcell; listbox; radiogroup; slider; spinbutton; textbox; tree
Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.
In practice — A11y.mv: It documents shortcuts you implement; it does not register them. Make shortcuts discoverable and avoid conflicting with browser or assistive-technology commands.
Defines a string value that labels the current element. See related aria-labelledby.
In practice — A11y.mv: Prefer a visible label or aria-labelledby when the label exists on the page. Check that the accessible name retains the visible label and is allowed on the element.
Source characteristics
Related Concepts
title attribute in [HTML]
Used in Roles
All elements of the base markup except for the following roles: caption, code, deletion, emphasis, generic, insertion, paragraph, presentation, strong, subscript, superscript
Identifies the element (or elements) that labels the current element. See related aria-describedby.
In practice — A11y.mv: Reference existing, unique IDs in the intended reading order. The referenced content supplies a name; this does not create a visible label.
Source characteristics
Related Concepts
<label> in [HTML]
Used in Roles
All elements of the base markup except for the following roles: caption, code, deletion, emphasis, generic, insertion, paragraph, presentation, strong, subscript, superscript
Defines the hierarchical level of an element within a structure.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.
In practice — A11y.mv: Create a region before updating it. Choose announcements appropriate to urgency, and test for unnecessary repetition with a screen reader.
Source characteristics
Used in Roles
All elements of the base markup
Value
token
Values from the specification
assertive
Indicates that updates to the region have the highest priority and should be presented the user immediately.
off (default)
Indicates that updates to the region should not be presented to the user unless the user is currently focused on that region.
polite
Indicates that updates to the region should be presented at the next graceful opportunity, such as at the end of speaking the current sentence or when the user pauses typing.
Indicates whether an element is modal when displayed.
In practice — A11y.mv: Use only when the interface behaves modally for everyone. It does not trap focus, make background content inert, or implement closing and focus return.
Indicates whether a text box accepts multiple lines of input or only a single line.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Indicates that the user may select more than one item from the current selectable descendants.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Source characteristics
Used in Roles
grid; listbox; tablist; tree
Inherits into Roles
treegrid
Value
true/false
Values from the specification
false (default)
Only one item can be selected.
true
More than one item in the widget may be selected at a time.
Indicates whether the element's orientation is horizontal, vertical, or unknown/ambiguous.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship between DOM elements where the DOM hierarchy cannot be used to represent the relationship. See related aria-controls.
In practice — A11y.mv: Prefer matching the intended hierarchy in the DOM. Use only when needed and test reading order and ownership carefully.
Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value. A hint could be a sample value or a brief description of the expected format.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Defines an element's number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM. See related aria-setsize.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Indicates the current "pressed" state of toggle buttons. See related aria-checked and aria-selected.
In practice — A11y.mv: Use on a toggle button and keep the button name stable as its state changes. Use a checkbox or switch for a setting when that better matches the task.
Source characteristics
Used in Roles
button
Value
tristate
Values from the specification
false
The element supports being pressed but is not currently pressed.
mixed
Indicates a mixed mode value for a tri-state toggle button.
Indicates that the element is not editable, but is otherwise operable. See related aria-disabled.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified. See related aria-atomic.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Source characteristics
Used in Roles
All elements of the base markup
Value
token list
Values from the specification
additions
Element nodes are added to the accessibility tree within the live region.
additions text (default)
Equivalent to the combination of values, "additions text".
all
Equivalent to the combination of all values, "additions removals text".
removals
Text content, a text alternative, or an element node within the live region is removed from the accessibility tree.
text
Text content or a text alternative is added to any descendant in the accessibility tree of the live region.
Indicates that user input is required on the element before a form may be submitted.
In practice — A11y.mv: This communicates that a value is required. It does not perform validation; use native required where appropriate and explain the requirement visibly.
Source characteristics
Related Concepts
required attribute in [HTML]
Used in Roles
checkbox; combobox; gridcell; listbox; radiogroup; spinbutton; textbox; tree
Defines a human-readable, author-localized description for the role of an element.
In practice — A11y.mv: Use sparingly. Replacing a familiar role description can make an interface harder to understand; it does not change the underlying role or required behavior.
Defines the total number of rows in a table, grid, or treegrid. See related aria-rowindex.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Defines an element's row index or position with respect to the total number of rows within a table, grid, or treegrid. See related aria-rowcount and aria-rowspan.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid. See related aria-rowindex and aria-colspan.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM. See related aria-posinset.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Indicates if items in a table or grid are sorted in ascending or descending order.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Source characteristics
Used in Roles
columnheader; rowheader
Value
token
Values from the specification
ascending
Items are sorted in ascending order by this column.
descending
Items are sorted in descending order by this column.
none (default)
There is no defined sort applied to the column.
other
A sort algorithm other than ascending or descending has been applied.
Defines the maximum allowed value for a range widget.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Defines the minimum allowed value for a range widget.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Defines the current value for a range widget. See related aria-valuetext.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Defines the human readable text alternative of aria-valuenow for a range widget.
In practice — A11y.mv: Check the value type and the roles that support this attribute. Keep the value synchronized with the actual interface, and verify it with the relevant browser and assistive technology.
Inspect the HTML. Choose a native control where it meets the task. Check the ARIA in HTML allowances before overriding semantics.
Inspect the accessibility tree. Does each control expose the expected name, role and current state? Do related IDs resolve to the intended elements?
Use the keyboard. Reach every control, operate it with its expected keys, and leave it. Check visible focus and logical focus return.
Change the state. Open, close, select, validate and update. Confirm the visual interface and accessibility information stay synchronized.
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.
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.
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.
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.