ARIA-метка задаёт доступное имя элемента: то, что озвучит скринридер. Правило простое: сначала нормальный HTML, потом ARIA. Кнопке с видимым текстом «Отправить» метка обычно не нужна.
Где уместно:
— иконка-кнопка без текста: aria-label="Закрыть";
— поле с подписью рядом: aria-labelledby на id подписи;
— группа контролов, где нужен контекст: «Способ доставки».
Частые ошибки:
— метка не совпадает с видимым текстом;
— aria-label перетирает полезный текст внутри кнопки;
— ссылка «Подробнее» не объясняет, о чём подробнее;
— ARIA добавлена на декоративный блок без пользы.
Проверка: пройти интерфейс клавиатурой и послушать имена элементов в скринридере. Без зрения должно быть понятно, что это за элемент и что произойдёт после активации.
ARIA не чинит плохую разметку. Хорошая метка короткая, точная и не дублирует очевидное: «Меню», «Удалить файл», «Открыть настройки».
Доступность веб-интерфейсов
@accessibility_in_design_ww
ARIA-метки: когда они помогают скринридеру, а когда ломают интерфейс
Этот пост опубликован в Telegram-канале Доступность веб-интерфейсов. Подписаться можно по ссылке: @accessibility_in_design_ww.