Кратко
СкопированоARIA-роль виджета для чекбокса.
Эта роль есть у <input type
по умолчанию.
Пример
Скопировано<div role="checkbox" tabindex="0" aria-checked="false" aria-labelledby="checkbox-name"></div><label id="checkbox-name">Выбери меня</label>
<div role="checkbox" tabindex="0" aria-checked="false" aria-labelledby="checkbox-name"> </div> <label id="checkbox-name">Выбери меня</label>
Как пишется
СкопированоДобавьте к тегу role
. Лучше, чтобы это были семантически нейтральные теги вроде <div>
и <span>
.
Атрибут нужен, когда нет возможности использовать возможности HTML. Например, когда это нужно для кастомного элемента. В этом случае скринридер объявит элемент как «чекбокс», без этой роли элемент будет обычным контейнером.
У элементов с role
обязательно должен быть атрибут aria
.
aria
указывает на текущее состояние чекбокса:
false
— чекбокс не выбран.true
— чекбокс выбран.mixed
— несколько чекбоксов выбрано, а какие-то не выбраны.
Чтобы элемент с ролью checkbox
получал фокус и к нему можно было переместиться с помощью клавиши Tab, используйте tabindex
.
Ещё полезно использовать aria
. Этот атрибут связывает кастомный чекбокс и подпись к нему с помощью одинакового ID. Когда пользователь сделает фокус на <div>
, он услышит его название.
Как понять
СкопированоЧекбокс или флажок — это элемент формы, который позволяет пользователю отметить один или несколько вариантов.