Декларация о доступности

  • Обязательства

WCAG 2.2 AA, соответствует частично: что проверяется автоматически, что не проверяется вовсе и когда будет закрыто каждое из известных исключений.

На этой странице

Черновик до запуска: текст написан, юристом не проверялся.

Заявленный уровень

Портал стремится к соответствию WCAG 2.2, уровень AA на всех страницах и в обеих локалях.

Не AAA, и это не осторожность. Часть его критериев — контраст 7:1, отсутствие ограничений по времени — несовместима с плотной технической вёрсткой, а заявлять недостижимое хуже, чем заявлять реальное: невыполнимое обещание обесценивает и выполнимые.

Статус соответствия

Соответствует частично. Все автоматические проверки проходят на всех шаблонах в обеих темах, и незакрытого долга нет. Но настоящей проверки со скринридером не было ни одной, а автоматика ловит около трети реальных барьеров — поэтому заявить полное соответствие нельзя.

Это и есть главное, что стоит знать из всей страницы. Зелёный прогон — не соответствие, а его нижняя граница; остальное перечислено в исключениях ниже, и там же сказано, когда будет закрыто.

Как проверяется

Всё перечисленное исполняется на каждом pull request и роняет сборку. Проверка, которую можно не пройти без последствий, не проходится всегда.

ЧтоНа чём
axe-core, наборы правил wcag2a, wcag2aa, wcag21a, wcag21aa, wcag22aa41 шаблонов страниц × 2 темы
1.4.10 Reflow при 320 × 256 CSS-пикселях15 шаблонов
2.5.8 Target Size, 24 px, с обоими исключениями критерия3 шаблона
Клавиатурный обход: порядок, видимое кольцо, отсутствие ловушки8 шаблонов × 2 темы
Escape закрывает раскрытия и возвращает фокусменю, панель языка, палитра команд
Контраст, посчитанный функцией самой библиотеки18 пар токенов × 2 темы
Lighthouse, категория доступностиключевые маршруты

Шаблонами, а не страницами: шаблон тиражируется, и нарушение в нём — это нарушение на всех его страницах. Список покрывает каждую существующую раскладку хотя бы раз, и гейт следит, чтобы ни один из его адресов не превратился в 404 — иначе проверка сканировала бы страницу ошибки и оставалась зелёной.

Чего автоматика не проверяет

Перечисление честное, а не оговорка мелким шрифтом. Автоматика не проверяет и не притворяется, что проверяет:

  • осмысленность `alt` и порядка чтения;
  • понятность имени ссылки вне контекста;
  • то, как объявление живой области звучит на самом деле;
  • работу с настоящим скринридером и настоящим увеличением.

Известные исключения

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

  1. Проверки настоящим скринридером не было

    Автоматика ловит около трети реальных барьеров. Она ничего не говорит о том, осмыслен ли alt, читается ли порядок, понятно ли имя ссылки вне контекста и как на самом деле звучит объявление живой области. Ничего из этого на портале человеком не проверялось.

    План: VoiceOver + Safari и NVDA + Firefox на ключевых маршрутах — главная, поиск, страница компонента, playground — до запуска и раз в квартал дальше.

  2. Ручной проверки увеличения и тача не было

    Reflow измеряется в эмулированном окне 320 пикселей, размер цели — в эмулированном 390. Настоящее увеличение браузера на 200% и 400% и настоящие пальцы на настоящем устройстве — другое, и этого не пробовали.

    План: Вместе с проходом по скринридерам, до запуска.

  3. Живые демо — компоненты библиотеки

    Демо на странице компонента — не картинка, а сам компонент, и подчиняется тем же критериям. Барьер, найденный в нём, — находка о библиотеке, а не о сайте, и портал может только сообщить о ней. Из 116 записей каталога клавиатурный контракт описан у 61; у остальных его нет, и сверять их не с чем.

    План: Клавиатурный контракт дописывается в репозитории библиотеки; портал считает покрытие на каждой сборке и называет его вслух.

  4. Playground ещё не сделан

    Страница /playground — заглушка. Когда она станет песочницей, исполняющей код, её доступность будет отдельным заявлением: у редактируемой области кода свои критерии, и наследовать эту декларацию было бы неверно.

    План: Отдельный раздел этой декларации в день появления песочницы.

Базовая линия долга

Известных нарушений, отложенных «на потом», нет: базовая линия пуста. Пустой она и остаётся не сама собой — приём в том, что перечисленное в ней не роняет прогон, а всё новое роняет, и поэтому нарушение чинится, а не дописывается в список.

На чём проверялось

Ни на одной вспомогательной технологии. Проверки шли в Chromium под управлением Playwright — это браузер, а не скринридер, и выдавать одно за другое в декларации о доступности значило бы обесценить весь документ.

Планируются VoiceOver + Safari на macOS и iOS и NVDA + Firefox на Windows. Как только проход состоится, здесь появится его дата и то, что он нашёл.

Как сообщить о барьере

Если что-то на сайте оказалось недоступно — напишите на [email protected]. Отвечаем в течение пяти рабочих дней. Опишите страницу, вспомогательную технологию и то, что не получилось, — этого достаточно, воспроизведение наше дело.

Барьер в живом демо — это, скорее всего, находка о библиотеке, а не о сайте. Писать всё равно сюда: разберёмся, куда её отнести, и заведём issue сами.

Правовой статус декларации

Декларация добровольная. Директива (EU) 2019/882 — Европейский акт о доступности — действует с 28 июня 2025 года и распространяется на электронную торговлю; портал ничего не продаёт, и обязанность по ней не наступила. Она наступит в тот день, когда на сайте появится кнопка покупки, и строить сайт доступным сразу дешевле, чем приводить в соответствие потом.

Состав поставки, SBOM и ответы для опросников — на странице комплаенса.