# ARIA Text

Checks role text elements contain no focusable descendants.

- Repository: https://github.com/thedaviddias/Front-End-Checklist (74621 stars)
- Category: Engineering
- License: MIT
- Last updated: 2026-10-31
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add thedaviddias/Front-End-Checklist --skill aria-text -g -a claude-code -y`
Codex: `npx skills add thedaviddias/Front-End-Checklist --skill aria-text -g -a codex -y`
Cursor: `npx skills add thedaviddias/Front-End-Checklist --skill aria-text -g -a cursor -y`
Gemini CLI: `npx skills add thedaviddias/Front-End-Checklist --skill aria-text -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add thedaviddias/Front-End-Checklist`

## Description

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.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Avoid focusable descendants in role="text" elements

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.

## Quick Reference

- Elements with `role="text"` should not contain interactive children (links, buttons)
- Ensure `role="text"` only contains static text content
- Prevent accessibility "black holes" where interactive items are hidden from screen readers

## Check

Identify elements with role="text" and verify they do not contain any focusable elements like buttons, links, or inputs.

## Fix

Remove role="text" from containers that have interactive children or move the interactive elements outside.

## Explain

Explain how role="text" overrides the semantics of descendant elements, making interactive components inaccessible to screen reader users.

## Code Review

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/rules/accessibility/aria-text

