ARIA Roles & Labels Flashcards
(30 cards)
aria-label
aria-label
Defines a string label for an element, used by screen readers.
✅ Use when a visible label is not present but a name is needed for accessibility.
aria-labelledby
aria-labelledby
Refers to the ID of another element that labels this element.
✅ Preferred over aria-label when there’s already visible text labelling the element.
aria-describedby
aria-describedby
Refers to the ID of element(s) that provide descriptive information (e.g., instructions or hints).
✅ Use to provide extended help text or instructions beyond the label.
aria-hidden
aria-hidden
Indicates whether the element is hidden from assistive technology.
✅ Use to hide decorative or redundant content.
aria-live
aria-live
Tells screen readers that content updates dynamically and should be announced.
✅ Use in live regions (e.g., alerts, chat updates).
aria-atomic
aria-atomic
Instructs screen readers whether to announce only changed content or entire region.
✅ Use with aria-live for clarity in updates.
aria-relevant
aria-relevant
Specifies which types of changes should be announced in a live region (additions, removals, etc.).
✅ Combine with aria-live.
aria-role
aria-role
Not an attribute itself. The correct term is just role.
✅ Assigns a role (e.g., button, dialog) to define purpose and behaviour.
aria-checked
aria-checked
Indicates the checked state of checkboxes, switches, or menu items.
✅ Values: true, false, or mixed.
aria-pressed
aria-pressed
Indicates the pressed state of toggle buttons.
✅ Values: true, false, or mixed.
aria-expanded
aria-expanded
Indicates whether a collapsible region or widget is expanded or collapsed.
✅ Use on elements that control visibility of other regions (e.g., accordions, dropdowns).
aria-controls
aria-controls
Points to the ID of elements being controlled by this element.
✅ Use with buttons or tabs that affect another region.
aria-haspopup
aria-haspopup
Indicates that the element has a popup, like a menu, listbox, dialog, or tree.
✅ Helps screen readers expect a pop-up interaction.
aria-current
aria-current
Indicates the currently active item within a set (e.g., pagination, tabs).
✅ Values: page, step, true, false.
aria-disabled
aria-disabled
Indicates that the element is disabled, even if not visually disabled using HTML disabled.
✅ Allows styling and behaviour to reflect this state.
aria-required
aria-required
Indicates that input is required in a form field.
✅ Use when HTML5 required is not sufficient or not applicable.
aria-invalid
aria-invalid
Indicates the validation state of a form field.
✅ Values: false, true, grammar, spelling.
aria-valuemax
aria-valuemax
Specifies the maximum allowed value for a widget like a slider or spinbutton.
✅ Use with aria-valuenow and aria-valuemin.
aria-valuemin
aria-valuemin
Specifies the minimum allowed value.
✅ Always paired with aria-valuenow and aria-valuemax.
aria-valuenow
aria-valuenow
Specifies the current value of a range widget.
✅ Required when the user can adjust values.
aria-valuetext
aria-valuetext
Provides a human-readable representation of aria-valuenow.
✅ Useful when the numeric value needs clarification (e.g., volume levels).
aria-busy
aria-busy
Indicates the element is being updated and screen readers should wait before reading it.
✅ Use on widgets that load new data dynamically.
aria-modal
aria-modal
Indicates that an element is a modal dialog and the rest of the app is inaccessible.
✅ Use with role=”dialog” or role=”alertdialog”.
aria-multiselectable
aria-multiselectable
Allows multiple items to be selected in widgets like listboxes.
✅ Used on parent container, not items themselves.