useAriaPropsSupportedByRole
Summary
Section titled “Summary”- Rule available since:
v1.9.0
- Diagnostic Category:
lint/a11y/useAriaPropsSupportedByRole
- This rule is recommended, which means is enabled by default.
- This rule doesn’t have a fix.
- The default severity of this rule is error.
- Sources:
Description
Section titled “Description”Enforce that ARIA properties are valid for the roles that are supported by the element.
Invalid ARIA properties can make it difficult for users of assistive technologies to understand the purpose of the element.
Examples
Section titled “Examples”Invalid
Section titled “Invalid”<a href="#" aria-checked />
code-block.jsx:1:1 lint/a11y/useAriaPropsSupportedByRole ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
✖ The ARIA attribute ‘aria-checked’ is not supported by this element.
> 1 │ <a href=”#” aria-checked />
│ ^^^^^^^^^^^^^^^^^^^^^^^^^^^
2 │
ℹ Ensure that ARIA attributes are valid for the role of the element.
<img alt="foobar" aria-checked />
code-block.jsx:1:1 lint/a11y/useAriaPropsSupportedByRole ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
✖ The ARIA attribute ‘aria-checked’ is not supported by this element.
> 1 │ <img alt=“foobar” aria-checked />
│ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2 │
ℹ Ensure that ARIA attributes are valid for the role of the element.
<> <a href="#" aria-expanded /> <img alt="foobar" aria-hidden /> <div role="heading" aria-level="1" /></>
How to configure
Section titled “How to configure”{ "linter": { "rules": { "a11y": { "useAriaPropsSupportedByRole": "error" } } }}