Skip to content

Галочка (Checkbox)

Галочки позволяют пользователю выбрать один или несколько элементов из набора.

Галочки можно использовать для включения или выключения опции.

Если в списке отображается несколько вариантов, вы можете сэкономить место, используя галочки вместо переключателей "вкл/выкл". Если у вас одна опция, избегайте использования галочек и используйте переключатель включения/выключения.

Базовые галочки

Press Enter to start editing

Подпись

Вы можете предоставить подпись для Checkbox благодаря компоненту FormControlLabel.

Press Enter to start editing

Размер

Используйте параметр size или настройте размер шрифта SVG-иконок, чтобы изменить размер галочек.

Press Enter to start editing

Цвет

Press Enter to start editing

Иконка

Press Enter to start editing

Управляемые галочки

Вы можете управлять галочкой с помощью реквизитов checked и onChange:

Press Enter to start editing

Неопределенные галочки

Галочка может иметь только два состояния в форме: отмечена или не отмечена. Она либо передает (submits, сабмитит) свое значение, либо нет. Визуально галочка может находиться в трех состояниях: отмечена, не отмечена или неопределенная.

Press Enter to start editing

FormGroup

FormGroup - это полезная обертка, используемая для группировки компонентов управления выбором.

Assign responsibility

Be careful

Pick two

You can display an error

Размещение подписи

Вы можете изменить расположение подписи:

Label placement

Кастомизация

Здесь приведен пример настройки компонента. Подробнее об этом можно узнать на странице документации overrides.

Press Enter to start editing

🎨 Если вы ищете вдохновение, вы можете посмотреть примеры кастомизации MUI Treasury.

Когда использовать

Доступность

(WAI-ARIA: https://www.w3.org/WAI/ARIA/apg/patterns/checkbox/)

  • Все элементы управления формы должны иметь метки, и это касается радиокнопок, флажков и переключателей. В большинстве случаев для этого используется элемент <label> (FormControlLabel).
  • Когда метка не может быть использована, необходимо добавить атрибут непосредственно к компоненту ввода. В этом случае вы можете применить дополнительный атрибут (например, aria-label, aria-labelledby, title) через свойство inputProps.
<Checkbox
  value="checkedA"
  inputProps={{
    'aria-label': 'Checkbox A',
  }}
/>