Со времени написания первого издания данной книги (2011 и 2012 годы) консорциум W3C добился многого в деле упрощения для разработчиков написания более доступных веб-страниц.
Руководство по обеспечению доступности веб-контента (WCAG)
Руководство WCAG существует с целью предоставления «единого общего стан дарта для доступности веб-контента, отвечающего на международной основе нуж дам физических лиц, организаций и правительств» .
Когда речь заходит о более простых веб-страницах (в противовес единой странице веб-приложений и им подобных средств), имеет смысл сконцентрироваться на руководстве WCAG. В нем предлагается целый ряд (в основном вполне разумных) рекомендаций по обеспечению доступности вашего веб-контента. Каждая рекомендация оценивается по уровням соответствия: A, AA или AAA. Дополнительные сведения об этих уровнях можно найти по адресу http://www.w3.org/TR/UNDERSTANDING-WCAG20/conformance.html#uc-levels-head.
Возможно, окажется, что вы уже придерживаетесь многих из рекомендаций, например, в плане предоставления альтернативного текста для изображений. Краткое изложение рекомендаций можно получить по адресу http://www.w3.org/WAI/WCAG20/glance/Overview.html, после чего создать свой собственный краткий контрольный лист-справочник по образцу, показанному на сайте http://www.w3.org/WAI/WCAG20/quickref/.
Я призываю всех потратить пару часов на изучение списка. Многие рекомендации совсем не трудно выполнить, предоставив тем самым реальные преимущества пользователям.
Стандарт предоставления возможности полноценного использования Интернета людьми с физическими ограничениями (WAI-ARIA)
Стандарт WAI-ARIA предназначен главным образом для решения проблем доступности динамического контента на веб-странице. Он предоставляет для специализированных виджетов (динамических разделов в веб-приложениях) средства описания ролей, состояний и свойств, чтобы они стали узнаваемыми и годными к использованию теми пользователями, которые применяют вспомогательные технологии.
Например, если выведенный на экран виджет показывает постоянно обновляемые биржевые котировки, то как незрячий пользователь получит доступ к странице, чтобы узнать об этом? Стандарт WAI-ARIA пытается решать проблемы подобного рода.
Не используйте роли для семантических элементов.Ранее рекомендовалось добавлять значимые роли к заголовкам и подвалам:
A header with ARIA landmark banner role
Но теперь это считается излишним. Если заглянуть в спецификацию для любого из ранее перечисленных элементов, там есть специально выделенный раздел разрешенных значений ARIA-атрибута role — Allowed ARIA role attributes. В качестве примера можно привести разъяснения из раздела элемента:
«Разрешенные значения ARIA-атрибута role: region role (по умолчанию не устанавливается), alert, alertdialog, application, contentinfo, dialog, document, log, main, marquee, presentation, search или status».
Основной частью здесь является «role (по умолчанию не устанавливается)». Это означает, что явное добавление этой ARIA-роли к элементу не имеет никакого смысла, поскольку она подразумевается самим элементом. Теперь это поясняется примечанием к спецификации:
«В большинстве случаев установка ARIA-атрибута role и/или атрибута aria-*, соответствующего исходной подразумеваемой ARIA-семантике, является излишней и не рекомендуется, поскольку эти свойства уже установлены браузером».
Если вы не в состоянии запомнить более одной рекомендации
Самое простое, что можно сделать с прицелом на применение вспомогательных технологий, — это пользоваться везде, где это возможно, правильными элементами. Элемент
окажется намного полезнее, чем div class="Header". Точно так же, если у вас на странице есть кнопка, воспользуйтесь элементом , а не элементом
или другим элементом, стилизованным под кнопку. Готов признать, что элемент не всегда позволяет применять конкретное стилевое оформление (его, к примеру, нельзя настроить с помощью инструкций display: table-cell или display: flex), но тогда выберите следующий более подходящий элемент, в качестве которого обычно выступает тег .
Развитие стандарта ARIA
ARIA не ограничивается одной лишь ориентацией в отношении ролей. Развивать стандарт помогают полный перечень ролей и краткое описание их пригодности к использованию, доступные по адресу http://www.w3.org/TR/wai-aria/roles.
Чтобы проще было разобраться в теме, я также рекомендую прочитать книгу Хейдона Пикеринга (Heydon Pickering) Apps For All: Coding Accessible Web Applications (доступна на сайте https://shop.smashingmagazine.com/products/apps-for-all-coding-accessible-web-applications).
Читать дальше