This page lists reference pages covering all the WAI-ARIA attributes discussed on MDN.
ARIA attributes enable modifying an element's states and properties as defined in the accessibility tree.
Note: ARIA only modifies the accessibility tree, modifying how assistive technology presents the content to your users. ARIA doesn't change anything about an element's function or behavior. When not using semantic HTML elements for their intended purpose and default functionality, you must use JavaScript to manage behavior, focus, and ARIA states.
There are 4 categories of ARIA states and properties:
aria-autocompletearia-checkedaria-disabledaria-errormessagearia-expandedaria-haspopuparia-hiddenaria-invalidaria-labelaria-levelaria-modalaria-multilinearia-multiselectablearia-orientationaria-placeholderaria-pressedaria-readonlyaria-requiredaria-selectedaria-sortaria-valuemaxaria-valueminaria-valuenowaria-valuetextaria-activedescendantaria-colcountaria-colindexaria-colspanaria-controlsaria-describedbyaria-descriptionaria-detailsaria-errormessagearia-flowtoaria-labelledbyaria-ownsaria-posinsetaria-rowcountaria-rowindexaria-rowspanaria-setsizeSome states and properties apply to all HTML elements regardless of whether an ARIA role is applied. These are defined as "Global" attributes. Global states and properties are supported by all roles and base markup elements.
Many of the above attributes are global, meaning they can be included on any element unless specifically disallowed:
aria-atomicaria-busyaria-controlsaria-currentaria-describedbyaria-descriptionaria-detailsaria-disabledaria-dropeffectaria-errormessagearia-flowtoaria-grabbedaria-haspopuparia-hiddenaria-invalidaria-keyshortcutsaria-labelaria-labelledbyaria-livearia-ownsaria-relevantaria-roledescriptionBy "specifically disallowed," all the above attributes are global except for the aria-label and aria-labelledby properties, which are not allowed on elements with role presentation nor its synonym none role.
The following are the reference pages covering the WAI-ARIA states and properties described on MDN.
The aria-activedescendant attribute identifies the currently active element when focus is on a composite widget, combobox, textbox, group, or application.
In ARIA live regions, the global aria-atomic attribute indicates whether assistive technologies such as a screen reader will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.
The aria-autocomplete attribute 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 will be presented if they are made.
The global aria-braillelabel property defines a string value that labels the current element, which is intended to be converted into Braille.
The global aria-brailleroledescription attribute defines a human-readable, author-localized abbreviated description for the role of an element intended to be converted into Braille.
The aria-busy attribute is a global ARIA state that indicates whether an element is currently being modified. It helps assistive technologies understand that changes to the content are not yet complete, and that they may want to wait before informing users of the update. While aria-busy is commonly used in ARIA live regions to delay announcements until updates are complete, it can also be used outside of live regions—for example, in widgets or feeds—to signal ongoing changes or loading.
The aria-checked attribute indicates the current "checked" state of checkboxes, radio buttons, and other widgets.
The aria-colcount attribute defines the total number of columns in a table, grid, or treegrid when not all columns are present in the DOM.
The aria-colindex attribute defines an element's column index or position with respect to the total number of columns within a table, grid, or treegrid.
The aria-colindextext attribute defines a human-readable text alternative of the numeric aria-colindex.
The aria-colspan attribute defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.
The global aria-controls property identifies the element (or elements) whose contents or presence are controlled by the element on which this attribute is set.
A non-null aria-current state on an element indicates that this element represents the current item within a container or set of related elements.
The global aria-describedby attribute identifies the element (or elements) that describes the element on which the attribute is set.
The global aria-description attribute defines a string value that describes or annotates the current element.
The global aria-details attribute identifies the element (or elements) that provide additional information related to the object.
The aria-disabled state indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.
The global aria-dropeffect attribute indicates what functions may be performed when a dragged object is released on the drop target.
The aria-errormessage attribute on an object identifies the element(s) that provides an error message for that object.
The aria-expanded attribute is set on an element to indicate if a control is expanded or collapsed, and whether or not the controlled elements are displayed or hidden.
The global aria-flowto attribute identifies the next element (or elements) in an alternate reading order of content. This allows assistive technology to override the general default of reading in document source order at the user's discretion.
The aria-grabbed state indicates an element's "grabbed" state in a drag-and-drop operation.
The aria-haspopup attribute indicates the availability and type of interactive popup element that can be triggered by the element on which the attribute is set.
The aria-hidden state indicates whether the element is exposed to an accessibility API.
The aria-invalid state indicates the entered value does not conform to the format expected by the application.
The global aria-keyshortcuts attribute indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.
The aria-label attribute defines a string value that can be used to name an element, as long as the element's role does not prohibit naming.
The aria-labelledby attribute identifies the element (or elements) that labels the element it is applied to.
The aria-level attribute defines the hierarchical level of an element within a structure.
The global aria-live attribute 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.
The aria-modal attribute indicates whether an element is modal when displayed.
The aria-multiline attribute indicates whether a textbox accepts multiple lines of input or only a single line.
The aria-multiselectable attribute indicates that the user may select more than one item from the current selectable descendants.
The aria-orientation attribute indicates whether the element's orientation is horizontal, vertical, or unknown/ambiguous.
The aria-owns attribute identifies an element (or elements) in order to define a visual, functional, or contextual relationship between a parent and its child elements when the DOM hierarchy cannot be used to represent the relationship.
The aria-placeholder attribute defines a short hint (a word or short phrase) intended to help the user with data entry when a form control has no value. The hint can be a sample value or a brief description of the expected format.
The aria-posinset attribute defines an element's number or position in the current set of listitems or treeitems when not all items are present in the DOM.
The aria-pressed attribute indicates the current "pressed" state of a toggle button.
The aria-readonly attribute indicates that the element is not editable, but is otherwise operable.
Used in ARIA live regions, the global aria-relevant attribute indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.
The aria-required attribute indicates that user input is required on the element before a form may be submitted.
The aria-roledescription attribute defines a human-readable, author-localized description for the role of an element.
The aria-rowcount attribute defines the total number of rows in a table, grid, or treegrid.
The aria-rowindex attribute defines an element's position with respect to the total number of rows within a table, grid, or treegrid.
The aria-rowindextext attribute defines a human-readable text alternative of aria-rowindex.
The aria-rowspan attribute defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.
The aria-selected attribute indicates the current "selected" state of various widgets.
The aria-setsize attribute defines the number of items in the current set of listitems or treeitems when not all items in the set are present in the DOM.
The aria-sort attribute indicates if items in a table or grid are sorted in ascending or descending order.
The aria-valuemax attribute defines the maximum allowed value for a range widget.
The aria-valuemin attribute defines the minimum allowed value for a range widget.
The aria-valuenow attribute defines the current value for a range widget.
The aria-valuetext attribute defines the human-readable text alternative of aria-valuenow for a range widget.