Certain ARIA roles must be contained by particular parent elements
How to Fix the Problem
Ensure all ARIA roles are contained by their required parent element, if any.
The relationship properties available in ARIA are the following:
- aria-controls (used primarily by elements where the role is group, region, or widget)
- aria-flowto (used primarily to provide alternate reading/tab order to skip past ads or complementary regions)
- aria-owns (used primarily to identify which elements belong to the group)
ARIA allows you to communicate relationship information to screen readers, which specifies relationships between items (for example,
aria-controls, both of which describe a kind of parent-child relationship where one item owns or controls another).
Why this is Important
For each role, WAI-ARIA explicitly defines which child and parent roles are allowable and/or required. Elements containing ARIA
role values missing required parent element
role values will not enable assistive technology to function as intended by the developer.
When it is necessary to convey context to the user of assistive technology in the form of hierarchy (for example, the importance of a parent container, item or sibling in a folder tree), and the hierarchy is not the same as the code structure or DOM tree, there is no way to provide the relationship information without the use of ARIA role parent elements.
Certain ARIA roles must be contained by particular parent
roles in order to perform the intended accessibility functions.
The Algorithm (in simple terms)
Checks all elements that contain a WAI-ARIA role to ensure that all required parent roles are present