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

Вопросы

Доступно ли сгенерированное приложение людям с инвалидностью?

Частично, и честный ответ состоит из трёх частей. Оно НЕ сертифицировано по WCAG и не проходило независимую проверку: ни одна страница этого сайта не утверждает обратного. При этом ряд основ заложен конструктивно, потому что интерфейс пишет детерминированная программа, а не рисует заново каждый раз, — видимый фокус клавиатуры, уменьшенная анимация по запросу системы, настоящие формы, никаких системных диалоговых окон. При каждой генерации дерево доступности каждого экрана фиксируется и публикуется в отчёте. То, чего не хватает, названо ниже, а не замолчано. А поскольку код принадлежит вам, исправление доступности — обычная работа, а не заявка поставщику.

Что обеспечено конструктивно, потому что интерфейс пишет программа

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

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

Никаких системных диалоговых окон, и почему это хорошая новость

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

Это решение принималось не ради доступности — оно выросло из проблемы автоматизации и вопроса визуального языка, — но его следствие реально и заслуживает упоминания. Системное окно выходит за пределы документа, прерывает нить чтения и объявляется по-разному в зависимости от браузера и вспомогательного средства. Подтверждение внутри страницы остаётся в порядке обхода табуляцией, читается как остальной экран и оставляет возможность вернуться назад, не отвечая на модальный вопрос.

Что ИЗМЕРЯЕТСЯ при каждой генерации — и чего измерение не обещает

Перед поставкой каждое приложение открывается в настоящем браузере и проходится экран за экраном. При этом проверяется не картинка, а дерево доступности: структура, по которой движется программа чтения с экрана. В нём фиксируются кнопки, ссылки и поля без доступного имени, пропущенные уровни заголовков, изображения без описания и одинаковые подписи, повторяющиеся вне списка. Крестик закрытия « × » считается безымянным, потому что программа чтения произносит его как « знак умножения ».

Здесь и находится точка честности, и она решающая: это ОТЧЁТ, а не шлагбаум. Нет ни порога, ни вердикта, ни блокировки — экран с безымянными элементами управления не задерживается при поставке. Измерение сообщает, следовательно, что известно о приложении; оно не обещает никакого уровня соответствия. Показатель покрытия, утверждающий обратное, был бы ровно тем обещанием, которое эта страница отказывается давать.

Что НЕ сделано и что вы можете с этим сделать

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

То, что вы можете с этим сделать, как раз и отличает эту ситуацию от закрытого программного обеспечения. Код принадлежит вам, его можно получить архивом или в репозитории, и это обычный проект на Next.js: удержать фокус в диалоге или добавить живую область — чётко очерченные фронтенд-задачи, поддающиеся оценке, которые способен выполнить любой подрядчик. У классического поставщика тот же изъян — это заявка, приоритетом и сроком которой вы не управляете. Если на вас распространяются правила доступности, запланируйте собственный аудит: он в любом случае обязателен, а здесь его выводы применимы на практике.

Узнать больше

Похожие вопросы

Опишите вашу задачу и посмотрите созданное приложение