# 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.

- Skill: `thedaviddias/tabindex` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add thedaviddias/tabindex`
- Raw SKILL.md: https://api.skillmd.com/api/skills/thedaviddias/tabindex/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Web & Frontend
- Author: thedaviddias (https://skillmd.com/u/thedaviddias)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/thedaviddias/tabindex

---


# 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

