Перейти к основному содержимому

Разработка 30 сентября 2026г. 8 мин чтения

Доступность сайта: требования WCAG простыми словами

Доступность сайта для инвалидов - это не кнопка "увеличить шрифт" в углу экрана. Это набор требований к обычной вёрстке, половину которых верстальщик выполняет бесплатно, если знает о них до начала работы. Разбираем, что стоит за аббревиатурой WCAG и что из этого нужно вашему сайту.

Доступность сайта для инвалидов - это не кнопка "увеличить шрифт" в углу экрана. Это набор требований к обычной вёрстке, половину которых верстальщик выполняет бесплатно, если знает о них до начала работы. Разбираем, что стоит за аббревиатурой WCAG и что из этого нужно вашему сайту.

Тему обычно поднимают в двух случаях: пришло замечание от проверяющих или заказчик увидел у конкурента панель с большими буквами и попросил такую же. Оба повода приводят к одному результату: покупается виджет, а сайт как был неудобным, так и остаётся.

WCAG (Web Content Accessibility Guidelines) - международный свод рекомендаций, на который опираются и российский ГОСТ Р 52872-2019, и требования к сайтам государственных и образовательных организаций. В оригинале это несколько сотен критериев, читать их подряд тяжело. Но вся конструкция стоит на четырёх принципах, и через них разобраться намного быстрее.

Что такое WCAG и почему принципов четыре

Логика простая. Контент должен дойти до человека (воспринимаемость), сайтом должно быть можно управлять любым способом ввода (управляемость), содержимое должно быть понятным (понятность), а разметка - корректно читаться программами (надёжность).

Речь не только про слепых. В аудиторию попадают слабовидящие, люди с нарушением цветовосприятия (это примерно 8% мужчин), с нарушениями моторики, слуха, а ещё все, у кого ограничение временное: сломанная рука, солнце на экране телефона, вагон метро без наушников. В России порядка 11 миллионов человек с инвалидностью, и это не считая пожилых, у которых просто садится зрение.

Воспринимаемость: контент должен дойти до человека

Alt у картинок. Атрибут описывает смысл изображения, а не то, что на нём нарисовано. У фото товара уместно название товара, у схемы - её вывод одной фразой, у декоративной завитушки - пустой alt="", чтобы диктор её пропустил. Типичная беда: alt="изображение_2024_final" или alt, набитый ключевыми словами.

Контраст текста. Минимум по уровню AA - 4,5:1 для обычного текста и 3:1 для крупного (от 24 пикселей или от 19 пикселей жирным). Модный серый #999999 на белом даёт 2,85:1 и требование не проходит. Проверяется за минуту в WebAIM Contrast Checker. Отдельная история - тёмная тема: инверсия цветов почти всегда ломает контраст в подписях и плейсхолдерах, об этом мы писали в разборе тёмной темы на сайте.

Информация не только цветом. Красная рамка у поля формы ничего не сообщает человеку с дальтонизмом. Нужен текст ошибки, иконка или подчёркивание. То же с графиками, где легенда различается только оттенком, и со звёздочками у обязательных полей.

Текст текстом, а не картинкой. Прайс, выложенный скриншотом из Excel, недоступен ни диктору, ни поиску, ни копированию.

Субтитры к видео. Для роликов с речью это требование уровня A. Автоматические субтитры площадки считаются, если их вычитали.

Масштаб до 200% без потери содержимого. Если при увеличении текст уезжает под соседний блок, требование не выполнено. Тот же самый дефект вылезает на телефонах, мы разбирали его в статье про ошибки мобильной версии.

Управляемость: всё должно работать с клавиатуры

Тест занимает десять минут: уберите руку с мыши и пройдите по сайту клавишей Tab. Открывается ли меню, работает ли слайдер, можно ли закрыть модальное окно клавишей Esc, не проваливается ли фокус куда-то за пределы экрана.

Видимый фокус. Строчка outline: none в CSS - самая дорогая строчка на всём сайте. Её пишут ради красоты, и после неё человек, идущий с клавиатуры, перестаёт понимать, где он находится. Убирать стандартную обводку можно только вместе с заменой на свою, заметную.

Размер кликабельной зоны. В WCAG 2.2 минимум 24 на 24 пикселя, комфортный ориентир - 44 на 44. Иконки соцсетей в подвале размером 16 пикселей не попадёт пальцем ни один человек с тремором.

Ссылка "к основному содержимому". Невидимая до фокуса ссылка в самом верху страницы, которая перепрыгивает шапку и меню. Без неё человек с клавиатуры на каждой странице заново прощёлкивает двадцать пунктов навигации.

Никаких ловушек и автоматики. Всплывающее окно, из которого нельзя выйти с клавиатуры, карусель без кнопки паузы, форма с таймером на заполнение - всё это прямые нарушения.

Понятность: формы, ошибки и предсказуемость

Подпись к полю - настоящий label, а не placeholder. Серая надпись внутри поля исчезает после первого символа, и человек забывает, что он тут вводит. Заодно placeholder обычно не проходит по контрасту.

Ошибки словами и рядом с полем. "Ошибка валидации" внизу формы бесполезна. Нужно: какое поле, что не так, как исправить. Например: "Телефон: введите 10 цифр после +7".

Структура заголовков. Один h1 на страницу, дальше h2 и h3 по порядку, без перескоков через уровень и без заголовков, поставленных ради размера шрифта. Экранные дикторы умеют листать страницу по заголовкам, это основной способ навигации.

Осмысленный текст ссылок. Четырнадцать ссылок "Подробнее" на странице в списке диктора превращаются в четырнадцать одинаковых строк.

Читаемая типографика. Сверхтонкие начертания, межстрочный интервал 1,1 и текст светло-серым по светло-серому убивают читаемость быстрее любого технического дефекта. Про выбор начертаний и подключение писали отдельно в материале про шрифты для сайта.

Надёжность: разметка, которую читают программы

Здесь всего два практических правила. Первое: использовать родные элементы. Кнопка должна быть <button>, а не <div> с обработчиком клика, ссылка - <a href>. Родные элементы уже умеют получать фокус, нажиматься с клавиатуры и правильно называть себя диктору.

Второе: ARIA-атрибуты добавлять только там, где родного элемента нет, и обязательно поддерживать их состояние в актуальном виде. Раскрывающееся меню с aria-expanded="false", который никогда не меняется на true, хуже, чем полное отсутствие атрибута.

Уровни A, AA и AAA: на какой ориентироваться

Уровень Что примерно входит Кому подходит
A Alt у картинок, работа с клавиатуры, субтитры, язык страницы Абсолютный минимум, для регламентов обычно мало
AA Всё из A плюс контраст 4,5:1, видимый фокус, масштаб 200%, подписи полей, размер зоны нажатия Рабочий ориентир для бизнеса и для проверок
AAA Контраст 7:1, сурдоперевод видео, отсутствие сложных формулировок Точечно, целиком сайт по AAA почти никто не делает

Практический вывод: целиться в AA. Все требования, которые мы видели в технических заданиях госзакупок и в предписаниях, укладываются в этот уровень.

Почему панель-виджет не заменяет вёрстку

Виджет умеет три вещи: увеличить шрифт, включить чёрно-белый или контрастный режим, отключить картинки. Это помогает слабовидящему посетителю, который пользуется обычным браузером.

Чего виджет не делает: не пишет alt за вас, не заставляет меню открываться с клавиатуры, не подписывает поля формы, не чинит структуру заголовков и не добавляет субтитры. Человек, который пользуется экранным диктором, до вашей панели даже не дойдёт: у него свои инструменты, и работают они с разметкой напрямую.

Подписка на такие сервисы стоит примерно от 500 до 3 000 рублей в месяц. Ставить панель имеет смысл тогда, когда её прямо требует регламент проверяющего органа, и никогда - вместо нормальной вёрстки. Подробнее про этот случай мы разбирали в статье про версию сайта для слабовидящих.

Кому обязательно, а кому просто выгодно

Обязательно: сайты госорганов и муниципальных учреждений, образовательных организаций (там требования к разделу описаны отдельно, см. материал про сайты школ и вузов), учреждений культуры и здравоохранения, а также любой подрядчик, если требование внесено в техническое задание госзакупки. Сам по себе ГОСТ Р 52872-2019 добровольный, но становится обязательным ровно в тот момент, когда на него сослались в контракте или регламенте.

Всем остальным доступность просто выгодна, и вот почему. Alt, осмысленные тексты ссылок, честная структура заголовков и текст текстом - это ровно то же, что требует поисковый робот. Крупные зоны нажатия и нормальный контраст - то же, что нужно человеку с телефоном на улице. Плюс возраст: если аудитория старше 45 лет, мелкий светло-серый шрифт стоит вам заявок прямо сейчас.

Честно и обратное: интернет-магазину аксессуаров для подростков доступность выручку не поднимет. Но если вы делаете сайт с нуля, она вам почти ничего и не стоит.

Как проверить свой сайт

Три уровня, каждый следующий дороже по времени.

  1. Автоматика, 15 минут. Вкладка Accessibility в Lighthouse (встроен в Chrome), расширение axe DevTools, сервис WAVE. Ловят контраст, отсутствующие alt и label, порядок заголовков, дубли идентификаторов. Покрывают примерно треть реальных проблем, но самые массовые находят сразу.
  2. Проход клавиатурой, 10 минут на шаблон. Только Tab, Shift+Tab, Enter, пробел и Esc. Проверяем: виден ли фокус, доступны ли меню, слайдер, модалка и форма, можно ли отправить заявку без мыши.
  3. Экранный диктор, час. NVDA бесплатный для Windows, VoiceOver встроен в macOS и iOS, TalkBack - в Android. Первые десять минут будет непривычно, зато сразу слышно, как звучат ваши "Подробнее" и "изображение_2024".

Внешний аудит доступности у подрядчиков стоит в пределах 15 000-60 000 рублей и обычно окупается тем, что список правок получается коротким и конкретным.

Чек-лист на 12 пунктов

  1. У всех содержательных картинок осмысленный alt, у декоративных - пустой.
  2. Контраст обычного текста не ниже 4,5:1, крупного - не ниже 3:1.
  3. Ни одно сообщение не передаётся только цветом.
  4. Весь сайт проходится клавишей Tab, порядок фокуса совпадает с порядком на экране.
  5. Фокус видно на каждом интерактивном элементе.
  6. Кликабельные зоны не меньше 24 пикселей, у важных кнопок - от 44.
  7. У каждого поля формы есть подпись label, а не только placeholder.
  8. Ошибки формы описаны словами и показаны рядом с полем.
  9. Заголовки идут по уровням: один h1, дальше без перескоков.
  10. Тексты ссылок понятны вне контекста, "Подробнее" в списке нет.
  11. У страницы указан язык, у видео с речью есть субтитры.
  12. Страница не разваливается при увеличении масштаба до 200%.

Двенадцать пунктов закрывают большую часть уровня AA. Если проходите их на своём сайте и не находите нарушений, дальше можно звать специалиста точечно, а не заказывать полный аудит.

Что делать в первую очередь

Начните с трёх вещей, которые дают больше всего эффекта за меньшее время: контраст текста, видимый фокус и подписи у полей форм. Дальше пройдите сайт клавиатурой и почините то, до чего невозможно добраться без мыши. Виджет-панель ставьте последней и только если её требует регламент, а не вместо перечисленного. Основная мысль такая: доступность на 80% состоит из аккуратной вёрстки, и стоит она денег только тогда, когда о ней вспомнили после сдачи проекта.

Если сайту предстоит переделка, самое дешёвое время заложить эти требования - до отрисовки макетов: дизайнер сразу проверяет пары цветов, верстальщик сдаёт работу с проходом по клавиатуре. Как мы встраиваем такую проверку в переделку существующих сайтов, описано на странице редизайна.

Частые вопросы

Обязательно ли обычному коммерческому сайту соответствовать WCAG?

По закону нет. Требования доступности предъявляют к сайтам госорганов, образовательных и бюджетных учреждений, а также ко всем, кто участвует в госзакупках, если это прописано в техническом задании. Остальным доступность полезна как обычное удобство: те же правила улучшают мобильную версию и частично работают на поиск.

Хватит ли установить панель для слабовидящих?

Панель меняет размер шрифта, включает высокий контраст и отключает картинки. Она не добавит описания к изображениям, не заставит меню работать с клавиатуры и не подпишет поля формы. Проверяющий по регламенту такую панель часто принимает, а живой человек с экранным диктором её не заметит.

На какой уровень WCAG ориентироваться бизнесу?

На AA. Уровень A даёт базовый минимум и его недостаточно для большинства регламентов, а AAA требует вещей вроде контраста 7:1 и сурдоперевода видео, что для коммерческого сайта избыточно. Практически все требования к сайтам в России сводятся к уровню AA.

Сколько стоит сделать сайт доступным?

Если требования заложены до вёрстки, доплата близка к нулю: это те же теги, атрибуты и цвета, только выбранные осознанно. Доработка готового сайта до уровня AA обходится у разных подрядчиков в пределах 30 000-120 000 рублей и зависит от числа шаблонов, а не страниц.

Вопросы читателей по теме

Все вопросы и ответы

Нужен сайт по этой теме?

Расскажите о задаче – вернёмся с расчётом и предложением структуры.