Какие требования к разработчику чтобы сделать страницу accessible?
Продвинутые темы
Чтобы сделать страницу доступной, разработчик должен: использовать семантический HTML, обеспечить клавиатурную навигацию, ARIA где нужно, контраст, альтернативные тексты, тестировать со скринридерами. Знать WCAG.
Требования к разработчику
Семантический HTML
Использовать теги по смыслу (<button>, <nav>, <main>, заголовки), а не <div> везде — они дают роли и поведение:
<button>Отправить</button> <!-- доступна из коробки -->Клавиатурная навигация
- Всё управляемо с клавиатуры (Tab, Enter, Escape, стрелки).
- Видимый фокус (
:focus-visible). - Логичный порядок табуляции, фокус-ловушки в модалках.
ARIA (где семантики не хватает)
Роли, состояния, свойства для кастомных виджетов:
<div role="dialog" aria-modal="true" aria-labelledby="title">Правило: сначала нативные теги, ARIA — при необходимости.
Контраст и визуал
- Контраст текста ≥ 4.5:1 (WCAG).
- Состояние не только цветом.
Альтернативы
altдля изображений, субтитры для видео, транскрипты.
Формы
<label for>, понятные ошибки,aria-describedby.
Тестирование
- Клавиатура, скринридеры (VoiceOver/NVDA), axe/Lighthouse.
Знание стандартов
WCAG (принципы POUR: Perceivable, Operable, Understandable, Robust).
Мышление
Доступностью занимаются с самого начала разработки (a11y by design).
Коротко для собеседования
Разработчик для accessible-страницы должен: писать семантический HTML (<button>, <nav>, роли из коробки), обеспечивать клавиатурную навигацию (Tab, видимый фокус), применять ARIA где нужно, следить за контрастом (≥ 4.5:1), давать alt/субтитры, делать доступные формы (<label>), тестировать скринридерами и axe/Lighthouse, знать WCAG (POUR). Доступность — с начала разработки, а не в конце.