Перейти к содержимому
v3.0.0
English
Русский
Документация

Switch

Switch — составной компонент для бинарных настроек, применяемых сразу: нативный input отвечает за семантику и состояние, а индикатор — за видимую дорожку и бегунок.

Именование

Метки переключателя должны описывать управляемую функцию или состояние, а не действие переключения.

Поведение клавиатуры

ОбъявлениеПереведите фокус на демо и нажмите клавишу из таблицы.
КлавишаДействие
SpaceВключает или выключает переключатель в фокусе.
TabShift + TabПереносит фокус на следующий или предыдущий переключатель. Каждый переключатель — отдельная остановка табуляции.
Каждая строка проверена в настоящем браузере: Playwright нажимает клавишу в Chromium и смотрит, где оказались фокус и активный элемент.
  • Видимая строка должна ясно читаться как одна бинарная настройка.

Поведение фокуса

  • Фокус должен попадать на нативный input.
  • Видимый стиль фокуса должен оставаться заметным на дорожке переключателя.

Семантика для скринридеров

  • Участие скрытого input помогает сохранить нативную семантику checked.
  • Метка должна делать включённое состояние понятным без лишних догадок.
  • Переключатели стоит оставлять для бинарных настроек, применяемых сразу, а не для сравнения вариантов.

Семантика формы

  • Используйте SwitchInput, когда переключатель должен участвовать в нативных формах.
  • Текст продукта должен ясно говорить, применяется ли переключатель сразу или при отправке.

Риски доступности

  • Метки вроде «Включить», которые не описывают управляемую настройку.
  • Отсутствие SwitchInput.
  • Переключатель там, где модели продукта лучше соответствует группа радиокнопок или список чекбоксов.