Атрибут tabindex

tabindex определяет, может ли элемент получить фокус с клавиатуры (Tab) и в каком порядке относительно других элементов.

Applies to

global

Values

"0" — элемент фокусируется в естественном DOM-порядке; положительное число — свой порядок (не рекомендуется); "-1" — элемент программно фокусируемый (через JS), но не Tab.

Example

<div tabindex="0" role="button">Кастомная кнопка</div>

Edge cases

  • Положительные значения (1, 2, 3...) ломают естественный порядок навигации и считаются anti-pattern — почти всегда лучше изменить порядок элементов в DOM, а не tabindex.
  • tabindex="-1" полезен для программного фокуса (например, на модалке после открытия), без добавления элемента в обычный Tab-порядок.

Accessibility

  • Нативно фокусируемые элементы (a, button, input) не нуждаются в tabindex — он нужен только для кастомных интерактивных div/span.

Похожие инструменты