Skip to content
cccskills
FreePublished on GitHubEnglish overview

aria-hidden-focus

Inspect hidden page regions for links, buttons, or inputs that still receive keyboard focus. Identify elements that screen readers cannot announce, suggest focus handling changes, and explain how to verify the resulting keyboard behavior.

OriginalShow the original description

Use when reviewing rendered HTML, interactive components, or design-system patterns related to Remove focusable elements from aria-hidden containers. Check native semantics first, then inspect keyboard behavior, focus flow, accessible names, and screen-reader output where relevant.

AI rating100/ 100See how to install

Good for

  • Checking hidden regions for focusable controls
  • Investigating silent focus during keyboard navigation
  • Reviewing accessibility in shared UI components

Overview

What it does

Check whether regions marked with aria-hidden="true" still contain elements that receive keyboard focus. The skill identifies links, buttons, and input fields, then points out the specific elements and the interaction problems they cause. It suggests changes using tabindex="-1" or inert and explains how to check the results with browser accessibility tools or assistive technology.

When it helps

Use it when a screen reader falls silent as you press Tab, or when you lose track of your current position while navigating a page. It also helps with reviews of shared UI components and components whose appearance changes with their state. The review starts with native HTML semantics, then examines focus flow and what the screen reader announces.

Example requests

  • “Check whether any focusable elements remain inside aria-hidden regions.”
  • “Find elements that receive keyboard focus without being announced, and suggest fixes.”

Notes

Adding aria-hidden does not prevent keyboard navigation to elements inside it. Check the rendered HTML and component states instead of relying only on source files. Where needed, verify the changes with a screen reader.

This overview was written by AI (OpenAI Codex) from the public SKILL.md. Check the original below for the exact behavior.

Objective evaluation

AI rated this skill on four points using only the contents of its SKILL.md. Stars and popularity are not taken into account.

Clear instructionsIs it clear when to use it and what it does?
AGoodThe material explicitly describes when to check aria-hidden containers and which focusable elements to inspect.
Concrete stepsAre steps, inputs, outputs, and examples spelled out?
AGoodIt specifies inspection targets, fixes using tabindex or inert, and reporting exact issues with verification methods.
SafetyAre sending data, deleting files, and running commands disclosed?
AGoodThe scope covers markup and interaction review and fixes; deletion and credential access are not specified.
Easy setupDoes it need few tools or API keys, and are they documented?
AGoodIt mentions browser accessibility tools and assistive technology for verification, with no API keys or paid services specified.

The total counts each point as A = 25, B = 15, C = 5. Rated by AI (OpenAI Codex) as of Oct 23, 2026. Treat it as a guide and read the original before installing.

Disagree? Request a re-evaluation

Tell us which point is wrong and why. No login needed. We will check it against the SKILL.md, redo the evaluation, and show the result here.

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

Files included (2)

  • SKILL.md1.8 KB
  • references/rule.md3.0 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Remove focusable elements from aria-hidden containers

When a keyboard user tabs into an aria-hidden element, the screen reader remains silent, leaving the user with no idea where their focus is or what they can interact with.

Quick Reference

  • Elements with aria-hidden="true" must not contain focusable children
  • Focusing on a hidden element creates a 'ghost' focus for screen reader users
  • Use tabindex="-1" or inert to properly hide interactive elements

Check

Scan aria-hidden="true" containers for focusable elements like links, buttons, or inputs.

Fix

Add tabindex="-1" to focusable children inside aria-hidden containers or use the inert attribute.

Explain

Explain why focusable elements inside aria-hidden containers cause confusion for keyboard and screen reader users.

Code Review

Review the rendered markup and interactive states that affect Remove focusable elements from aria-hidden containers. 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-hidden-focus

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

404-page

FreeSummary

Create and review custom 404 pages that help visitors recover from broken or moved links through search and navigation. Check the rendered page and HTTP response so missing content returns a proper 404 status.

  • Creating a helpful custom 404 page
  • Adding search and navigation for broken links
  • Checking missing pages that return HTTP 200
thedaviddias/Front-End-Checklist74.5KUpdated Oct 6, 2026

about-page

FreeSummary

Audit or create a dedicated About page that explains a website’s purpose and identifies its people or organization. Review the rendered output and supporting information, including expertise and contact details, to find gaps.

  • Reviewing a website’s About page
  • Creating a page about the organization and its mission
  • Checking how operator information appears in rendered output
thedaviddias/Front-End-Checklist74.5KUpdated Oct 6, 2026

accessibility-testing

FreeSummaryAI rating 80

Review and add automated accessibility checks for components, pages, and continuous integration workflows. Use axe-based tools to detect structural and attribute issues, while identifying checks that still need keyboard or screen reader testing.

  • Review accessibility coverage for shared components
  • Add accessibility checks to page flow tests
  • Run accessibility tests in CI
thedaviddias/Front-End-Checklist74.5KUpdated Oct 6, 2026

accessible-authentication

FreeSummaryAI rating 90

Review sign-in, registration, multi-factor authentication, and account recovery for accessibility barriers. Find blocked paste, difficult code entry, and inaccessible backup methods, then suggest authentication paths that support password managers, autofill, or device approval.

  • Reviewing accessibility across the sign-in process
  • Checking verification code paste and autofill
  • Inspecting password reset and account recovery
thedaviddias/Front-End-Checklist74.5KUpdated Oct 6, 2026

accessible-notifications

FreeSummaryAI rating 100

Review form errors, success messages, and live updates so screen reader users receive important notifications. Check the HTML delivered to the browser, announcement settings, display duration, and dismissal controls, then identify specific elements that need changes.

  • Reviewing form error announcements
  • Checking success message display duration
  • Auditing live update notifications
thedaviddias/Front-End-Checklist74.5KUpdated Oct 6, 2026

accessible-tables

FreeSummaryAI rating 100

Review HTML tables so screen reader users can understand how headers and data relate. Check header markup, table descriptions, and merged cells, then identify specific fixes and ways to verify them.

  • Reviewing tables for screen reader accessibility
  • Checking header relationships in tables with merged cells
  • Reviewing table patterns in a design system
thedaviddias/Front-End-Checklist74.5KUpdated Oct 6, 2026

See all skills by thedaviddias

Report a problem with this skill