Список проверки на соответствие стандартам секции 508 от WebAIM

Оригинал на www.webaim.org

Содержание статьи

Часть 1: для HTML
Часть 2: для скриптов, плагинов, Java и т.д.

Примечание: Доступна упрощенная версия. Также присутствует PDF версия для печати. (Скачать Adobe Reader).

Часть 1: для HTML

Следующие стандарты выбраны из Секции 508 Закона о реабилитации, § 1194,22. Критерий корректности/некорректности в данном документе представляет собой толкование веб-стандартов из Секции 508. Этот перечень не является официальной документацией из Секции. Полный текст Секции 508 доступен здесь: Официальный веб-сайт Секции 508.

Стандарт 508 КОРРЕКТНО: НЕКОРРЕКТНО:
(a) Должен быть предоставлен текстовый эквивалент для каждого элемента в нетекстовом формате (например, через "alt", "longdesc" или в содержимом элемента). Каждое изображение, апплет, встроенные медиафайлы, подключаемые модули и т.п. элементы, передающие содержание, должны иметь альтернативный текст (alt, longdesc или в контексте элемента). Нетекстовый элемент не имеет alt, текстового описания, описание не соответствует медиафайлу, или элемент не описан в поясняющем тексте.
Альтернативный текст кратко описывает содержимое, выражаемое элементом, без излишней многословности (для простых объектов) или излишней нечеткости (для сложных объектов). Альтернативный текст многословный (например, «изображение…», «картинка для…» и т.д.), нечеткий, вводящий в заблуждение, неточный или избыточный (к примеру, alt совпадает с поясняющим текстом).
Сложная графика (графики, таблицы и т.п.) сопровождается эквивалентным текстом: посредством описания в теле страницы, с помощью ссылки на отдельную страницу, или с помощью атрибута longdesc.
[Смотри Примечание 1]
Сложная графика не имеет альтернативного текста или он не полностью выражает содержимое графики.
Изображения, которые несут функциональную нагрузку (изображения – ссылки, кнопки, активные области) имеют альтернативный текст, который описывает связанную функцию. Альтернативные тексты для изображений-ссылок, изображений-кнопок или активных областей не описывают функцию.
Декоративная графика представлена фоновыми CSS изображениями или имеет пустой атрибут alt (alt=""). Изображениям, которые имеют альтернативный текст в содержании, назначается пустой alt, чтобы избежать избыточности. Декоративная графика имеет альтернативный текст в виде пробела, фразы «декоративная графика» или другой посторонней надписи. Описание в атрибуте alt пересекается с поясняющим текстом.
Аудиоконтент продублирован в текстовом виде. Аудиоконтент не имеет текстового представления.

Стандарт 508 КОРРЕКТНО: НЕКОРРЕКТНО:
(b) Альтернативный текст любой мультимедийной презентации должен быть синхронизирован с презентацией. Видео файлы и аудиотрансляции в прямом эфире имеют синхронизированные субтитры. Видео файлы и аудиотрансляции не имеют субтитров, или субтитры не синхронизированы.
Контент, выражаемый посредством видео, но не имеющий аудиодорожки, имеет звуковое описание. Звуковое описание для исключительно визуального контента отсутствует.

Стандарт 508 КОРРЕКТНО: НЕКОРРЕКТНО:
(с) Веб-страницы должны быть спланированы так, чтобы любая информация, передаваемая с помощью цвета, была доступна и без него, например, с помощью контекста или разметки. Для отображения важной информации используется не только цвет. Цвет – единственный способ отображения информации.
Обеспечена достаточная контрастность. Контрастность слабая.

Стандарт 508 КОРРЕКТНО: НЕКОРРЕКТНО:
(d) Документы должны быть устроены так, чтобы для их чтения не требовались соответствующие таблицы стилей. Для слоя могут использоваться таблицы стилей, но документ остается читаемым и разборчивым (хотя, возможно, визуально менее привлекательным) при выключенных таблицах стилей. Документ «расползается» или теряется информация при отключенных таблицах стилей.

Стандарт 508 КОРРЕКТНО: НЕКОРРЕКТНО:
(e) Каждому активному региону картинки, обрабатываемой сервером (server-side image map), должна соответствовать дублирующая текстовая ссылка. Активные изображения обрабатываются на стороне клиента. Подходящий альтернативный текст прописан как для картинки, так и для каждой области. Активные изображения обрабатываются сервером или не могут быть обработаны клиентом.
(f) Активная картинка должна обрабатываться на стороне клиента («client-side»), а не сервера («server-side»), за исключением случаев, когда регионы не могут быть описаны стандартными геометрическими фигурами.

Стандарт 508 КОРРЕКТНО: НЕКОРРЕКТНО:
(g) В таблицах должны присутствовать заголовки строк и столбцов. Таблицы с данными имеют заголовки строк и столбцов (используется тег <th>). Заголовки в таблице с данными отсутствуют.
Таблицы, используемые для разметки шаблона, не используют тег <th>. Таблицы, используемые для разметки шаблона, имеют заголовки, когда в этом нет необходимости.

Стандарт 508 КОРРЕКТНО: НЕКОРРЕКТНО:
(h) Для связи ячеек данных и ячеек заголовков в таблицах, которые имеют два или более логических уровня заголовков строк или столбцов, должна использоваться разметка. Ячейки с данными связаны с соответствующими заголовками с помощью атрибутов scope или id/headers. Ячейки с данными не связаны с заголовками строк или столбцов, или связаны некорректно.

Стандарт 508 КОРРЕКТНО: НЕКОРРЕКТНО:
(i) Фреймы должны иметь заголовок, облегчающий идентификацию фрейма и навигацию. Каждый фрейм получает title, который описывает его назначение или содержание. Фреймы не имеют title, или title не описывает назначение или содержание фрейма.

Стандарт 508 КОРРЕКТНО: НЕКОРРЕКТНО:
(j) Страницы должны быть спланированы так, чтобы избегать мерцания экрана с частотой больше 2 Герц и меньше 55 Герц. На странице нет элементов, моргающих с частотой 2-55 раз в секунду, это снижает риск возникновения эпилептического припадка. Имеются элементы, моргающие с частотой 2-55 раз в секунду, это повышает риск возникновения эпилептического припадка.

Стандарт 508 КОРРЕКТНО: НЕКОРРЕКТНО:
(k) Если выполнение правил, изложенных в этой секции, невозможно для главной страницы, то должна быть предусмотрена текстовая страница с аналогичной информацией, чтобы соблюдать положения этой секции. Содержание текстовой страницы должно обновляться при любых изменениях главной страницы. Текстовая версия создается только в тех случаях, когда нет других способов доступа к контенту, или когда она имеет значительно преимущество перед основной версией в некоторых характеристиках. Текстовая версия создается, когда основная версия не доступна, но может быть полностью исправлена.
Текстовая версия предоставляет аналогичный контент и он соответствует основной версии. Текстовая версия не эквивалентна основной версии или содержит устаревший контент.

Стандарт 508 КОРРЕКТНО: НЕКОРРЕКТНО:
(l) Когда для отображения контента или элементов интерфейса страницы используют язык сценариев, то информация, предоставляемая этим языком, должна быть записана понятным для используемых технологий образом. Контент и функциональные возможности, предоставляемые сценариями, доступны напрямую вспомогательным технологиям и клавиатуре. Контент, заключенный в теги <noscript>, не предоставляет подходящую альтернативу в случае невозможности обработки сценариев. Контент и функциональные возможности, предоставляемые сценариями, работают только с мышкой и не распознаются вспомогательными технологиями.

Стандарт 508 КОРРЕКТНО: НЕКОРРЕКТНО:
(m) Если для отображения содержимого веб-страницы требуется апплет, плагин или другое приложение, выполняющееся на стороне клиента, то на странице должна находиться ссылка на этот плагин или апплет, которая удовлетворяет §1194.21(a) - (l).
[Смотри Примечание 2]
[Смотри Примечание 3]
Ссылка ведет на страницу загрузки плагина. Ссылка не ведет на страницу загрузки плагина.
Все апплеты, сценарии или плагины (включая файлы формата PDF, PowerPoint и т.д.) и их содержимое доступно для применяемых технологий. В противном случае, предоставлены альтернативные средства для доступа к контенту. Для недоступных плагинов, сценариев или других приложений не предусмотрено доступных аналогов.

Стандарт 508 КОРРЕКТНО: НЕКОРРЕКТНО:
(n) Электронные формы, спроектированные для заполнения в режиме онлайн, должны давать пользователю доступ к информации, полям и функциональным возможностям (включая указания и подсказки), которые требуются для заполнения и отправки формы. Элементы <input>, <textarea> и <select> содержат связанные с ними метки label, или им назначены атрибуты title, отражающие смысл элемента. Между элементам формы и метками нет связи.
Элементы формы, использующие языки сценариев, не конфликтуют со применяемыми технологиями или клавиатурой. Использование скриптового языка мешает доступу применяемых технологий и клавиатуры к частям формы.

Стандарт 508 КОРРЕКТНО: НЕКОРРЕКТНО:
(o) Должен предоставляться способ, позволяющий пропускать повторяющиеся навигационные ссылки. Есть ссылка, позволяющая обойтись без навигационного меню или других длинных списков ссылок. Хорошая структура заголовков также облегчает навигацию. Не существует способа обойтись без длинных списков ссылок.

Стандарт 508 КОРРЕКТНО: НЕКОРРЕКТНО:
(p) Если требуется отклик с контролем по времени, то пользователь должен быть предупрежден и ему должна быть дана возможность запросить больше времени. Пользователь сам определяет момент изменения контента. Пользователь вынужден действовать в ограниченных временных рамках.


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

Примечание 2: Автономные медиаплееры обычно доступнее, чем встроенные.

Примечание 3: PDF-файлы можно сделать доступными для чтения с экрана. Но, вероятно, лучше всего вставить HTML-версию документа вместо PDF-версии или в дополнение к ней. PowerPoint файлам также должна предоставляться альтернатива.

Часть 2: для скриптов, плагинов, Java и т.д

Следующие стандарты выбраны из Секции 508 Закона о реабилитации, § 1194.21. Полный текст Секции 508 смотри по ссылке.

Стандарт 508
(a) Если программное обеспечение запускается в системе, использующей клавиатуру, то функции ПО должны управляться при помощи клавиатуры. Притом сама функция и результат ее выполнения должны отображаться в текстовой форме.
(b) Приложения не должны нарушать или отключать активные функции других продуктов, которые считаются легитимными, если эти функции разработаны и задокументированы согласно стандартам индустрии. Приложения не должны нарушать или отключать функции любой операционной системы, которые считаются легитимными, если программный интерфейс для этих легитимных функций задокументирован разработчиком операционной системы и доступен разработчикам программного обеспечения.
(c) Присутствует четкий экранный указатель фокуса ввода, который должен перемещаться среди элементов интерфейса при изменении текущего фокуса. С точки зрения программы фокус должен быть таким, чтобы вспомогательные технологии могли отследить фокус и его изменение.
(d) Вспомогательным технологиям должна быть доступна информация о элементах пользовательского интерфейса, включая их назначение, действия над ними и их состояние. Если изображение представляет собой элемент программы, то информация, которую несет изображение, должна быть доступна и в текстовой форме.
(e) Если изображения используются, чтобы идентифицировать средства управления, индикаторы статуса или другие элементы программы, то смысл, соответствующий этим изображениями должен быть одинаковым во всей программе.
(f) Текстовая информация должна отображаться с помощью соответствующих средств операционной системы. Как минимум, должна быть доступна следующая информация о тексте: содержание, позиция курсора и атрибуты текста.
(g) Приложения не должны изменять контрастность, цветовую гамму и прочие выбранные пользователем настройки отображения информации.
(h) Если в продукте используется анимация, то пользователю должна быть доступна по крайней мере одна неанимированная версия продукта.
(i) Кодирование цветом не должно быть единственным средством представления информации, сигнализации о действиях, подсказки ответа или отличия визуальных элементов.
(j) Если продукт разрешает изменять цветовые и контрастные настройки, то пользователю должно быть предоставлено множество цветовых наборов, допускающих множество контрастных уровней.
(k) Программное обеспечение не должно использовать текст, объекты или другие элементы, сверкающие или мигающие с частотой выше 2 Гц и ниже 55 Гц.
(l) Если используется электронная форма, то применяемые технологии должны иметь доступ к информации, полям и функциональности (включая описания и подсказки), которые требуются для заполнения и отправки формы.