Перейти к содержимому
← База знаний

Как работает виджет и автоматические исправления

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

Проверить сайт бесплатно

Два разных механизма

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

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

Что видит посетитель в панели виджета

Изменение размера текста (пошагово, с ограничением, чтобы вёрстка не разваливалась), четыре режима контраста (обычный, повышенный, высокий, инверсия), оттенки серого, межстрочный/межбуквенный/межсловный интервал, отключение анимации, подчёркивание ссылок, усиленный контраст ссылок и усиленная подсветка фокуса для клавиатурной навигации.

Все эти настройки применяются только в браузере конкретного посетителя (через CSS/классы на странице) и не меняют сайт для остальных — это ассистивный инструмент, а не правка контента.

Автоматические исправления: что чинится само

Сейчас в автоматическом режиме безопасно и детерминированно чинятся четыре типа проблем: отсутствующий атрибут lang, некорректный ARIA-атрибут (он удаляется, а не заменяется угаданным значением), недостаточный контраст текста (реальный алгоритм по формуле WCAG постепенно сдвигает цвет к более тёмному или светлому, пока не будет достигнут нужный коэффициент контрастности) и отсутствующая «skip-ссылка» для перехода к основному контенту.

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

Runtime и Source: два способа применения фикса

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

Runtime-патч — это способ не заставлять посетителей ждать релиза, а не повод не чинить код: то, что подсвечено как Source-патч, стоит перенести в реальную разметку сайта.

Как настроить

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

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

Если виджет исправляет что-то на лету, значит ли это, что код сайта чинить не нужно?

Нет. Runtime-патч решает проблему для посетителя здесь и сейчас, но первопричину в разметке всё равно стоит поправить — для этого в дашборде есть соответствующий Source-патч.

Может ли виджет сломать вёрстку сайта?

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

Почему не все найденные проблемы исправляются автоматически?

Часть проблем (например, отсутствующий alt-текст) требует понимания смысла контента — автоматически угадывать такой текст небезопасно, поэтому для них платформа предлагает AI-подсказку для ручного применения, а не патчит сайт вслепую.