Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Use when reviewing rendered HTML, interactive components, or design-system patterns related to Avoid focusable descendants in role='text' elements. Check native semantics first, then inspect keyboard behavior, focus flow, accessible names, and screen-reader output where relevant.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-17 | ✗→✓ | ▲ Improved | -28% | 0% |
| case-01 | ✓→✓ | = Same ✓ | -3% | 0% |
| case-02 | ✓→✓ | = Same ✓ | -19% | 0% |
| case-03 | ✓→✓ | = Same ✓ | -21% | 0% |
| case-04 | ✓→✓ | = Same ✓ | 11% | 0% |
Using role="text" on a container forces screen readers to treat everything inside as a single string of text, which effectively hides any interactive elements from users who rely on assistive technology.
role="text" should not contain interactive children (links, buttons)role="text" only contains static text contentIdentify elements with role="text" and verify they do not contain any focusable elements like buttons, links, or inputs.
Remove role="text" from containers that have interactive children or move the interactive elements outside.
Explain how role="text" overrides the semantics of descendant elements, making interactive components inaccessible to screen reader users.
Review the rendered markup and interactive states that affect Avoid focusable descendants in role="text" elements. Flag exact elements, roles, labels, focus behavior, or keyboard interactions that violate the rule, and note how to verify the fix with browser accessibility tooling or assistive tech.
For full implementation details, code examples, and framework-specific guidance, see references/rule.md.
Rule page: https://frontendchecklist.io/en/rules/accessibility/aria-text
Other measured skills in the registry, with their headline benchmark lift.