Сначала нативная семантика
Каждый компонент строится на элементе платформы, у которого уже есть нужная роль и управление с клавиатуры: <button>, <dialog>, <details>, поля checkbox и radio, а также Popover API. ARIA служит резервным вариантом.
Навигация с клавиатуры
- Активация — Enter и Space активируют кнопки и переключатели; Space меняет состояние флажков и выключателей.
- Составные виджеты — клавиши со стрелками перемещают фокус внутри меню, вкладок, групп радиокнопок и панелей инструментов; Home и End переходят к первому и последнему элементу.
- Всплывающие элементы — Escape закрывает диалоги, всплывающие блоки и меню, возвращая фокус на триггер.
- Порядок Tab — при обходе с клавиатуры фокус получают только интерактивные элементы; отключённые элементы управления пропускаются.
На каждой странице компонента описано управление с клавиатуры.
Управление фокусом
Модальные окна удерживают фокус, пока открыты, и восстанавливают его после закрытия. Во всплывающих блоках и меню между пунктами перемещается tabindex. Стили видимого фокуса задаются в CSS приложения с помощью data-state и :focus-visible.
Как это проверяется
Каждое утверждение на этой странице — обязательное условие выпуска: отсутствие нарушений axe в Chromium, Firefox и WebKit, а также полный набор тестов без JavaScript, который проходят компоненты Tier 0. См. проверки