Tabindex

Use when reviewing rendered HTML, interactive components, or design-system patterns related to Use appropriate tabindex values. Check native semantics first, then inspect keyboard behavior, focus flow, accessible names, and screen-reader output where relevant.

thedaviddias dd3c629 2 files · 3.7 KB Updated

File contents

Use appropriate tabindex values

Incorrect tabindex values can create a confusing navigation experience, making it difficult for keyboard users to predict where focus will move next.

Quick Reference

  • Stick to tabindex="0" for custom interactive elements
  • Use tabindex="-1" for elements that should only be focusable via script
  • Avoid positive values (1, 2, 3...) which break natural tab order

Check

Check for any positive tabindex values and ensure custom interactive elements are focusable.

Fix

Remove positive tabindex values and use tabindex="0" or -1 appropriately.

Explain

Explain why positive tabindex values are problematic for keyboard navigation and user experience.

Code Review

Review the rendered markup and interactive states that affect Use appropriate tabindex values. 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/tabindex

thedaviddias/front-end-checklist/tree/main/skills/tabindex commit dd3c629d3b

Frequently asked questions

npx skillmds@latest add thedaviddias/tabindex