Что такое доступность?
Данная статья открывает модуль, в котором рассматривается, что такое доступность — в статье рассказывается о том, какие группы людей нам нужно учитывать и почему, какие инструменты используют разные люди для взаимодействия с вебом, и как мы можем внедрить доступность в процесс веб-разработки.
| Предварительные требования: | Знакомство с HTML и CSS. |
|---|---|
| Результаты обучения: |
|
Что такое доступность?
Доступность — это практика создания веб-сайтов, пригодных для использования как можно большим количеством людей. Традиционно мы считаем, что это касается людей с ограниченными возможностями, но обеспечение доступности сайтов также приносит пользу другим группам, например, пользователям мобильных устройств или тем, у кого медленное интернет-соединение.
Можно также рассматривать доступность как равное отношение ко всем и предоставление равных возможностей, независимо от способностей или обстоятельств человека. Так же, как недопустимо исключать кого-то из доступа в физическое здание из-за инвалидной коляски (в современных общественных зданиях обычно есть пандусы или лифты), недопустимо исключать кого-то из доступа к веб-сайту из-за нарушения зрения. Мы все разные, но мы все люди и, следовательно, обладаем одинаковыми правами человека.
Обеспечение доступности — это правильный поступок. Создание доступных сайтов является законодательным требованием в некоторых странах, что позволяет выйти на значительные рынки, которые в противном случае не смогли бы использовать ваши услуги или покупать ваши продукты.
Создание доступных сайтов выгодно для всех:
- Семантический HTML, который улучшает доступность, также способствует SEO, делая ваш сайт более заметным.
- Забота о доступности демонстрирует высокую этику и моральные принципы, что улучшает ваш публичный имидж.
- Другие лучшие практики, улучшающие доступность, также делают ваш сайт более удобным для других групп, таких как пользователи мобильных телефонов или те, у кого низкая скорость сети. Фактически, все могут извлечь выгоду из таких улучшений.
- Мы уже упоминали, что в некоторых странах это также требуется по закону?
Какие типы ограниченных возможностей мы рассматриваем?
Люди с ограниченными возможностями так же разнообразны, как и люди без них, и их ограниченные возможности тоже разнообразны. Ключевой урок здесь — выйти за рамки своего собственного компьютера и того, как вы используете веб, и начать изучать, как это делают другие — вы не ваш пользователь. Основные типы ограниченных возможностей, которые следует учитывать, объяснены ниже, вместе с особыми инструментами, которые они используют для доступа к веб-контенту (известными как вспомогательные технологии.
Примечание: В справке Всемирной организации здравоохранения «Инвалидность и здоровье» указано, что «Более миллиарда человек, около 15% населения мира, имеют ту или иную форму инвалидности», и «От 110 до 190 миллионов взрослых испытывают значительные трудности в функционировании».
Люди с нарушениями зрения
К людям с нарушениями зрения относятся люди с слепотой, слабым зрением и дальтонизмом. Многие люди с нарушениями зрения используют увеличители экрана, которые могут быть как физическими лупами, так и функциями программного увеличения. В большинстве современных браузеров и операционных систем есть функции увеличения. Некоторые пользователи полагаются на программы экранного доступа (скринридеры) — это программное обеспечение, которое вслух читает цифровой текст. Примеры программ экранного доступа:
- Платные коммерческие продукты, например JAWS (Windows) и Dolphin Screen Reader (Windows).
- Бесплатные продукты, такие как NVDA (Windows), ChromeVox (Chrome) и Orca (Linux).
- Встроенные в операционную систему, например VoiceOver (macOS, iPadOS, iOS), Экранный диктор (Windows), ChromeVox (в ChromeOS) и TalkBack (Android).
Будет полезно ознакомиться с программами экранного доступа; вам также следует установить такую программу и поэкспериментировать с ней, чтобы понять, как она работает. Подробнее об их использовании рассказывается в нашем руководстве по программам экранного доступа. Следующее видео также представляет краткий пример того, как выглядит этот опыт.
Что касается статистики, то Всемирная организация здравоохранения оценивает, что «Во всём мире 285 миллионов человек страдают от нарушений зрения: 39 миллионов являются слепыми и 246 миллионов имеют пониженное зрение». (источник — «Нарушения зрения и слепота»). Это большая и значительная часть пользователей, которую можно упустить из-за неправильного кода вашего сайта — почти как население Соединенных Штатов Америки.
Люди с нарушениями слуха
Глухие и слабослышащие люди имеют различную степень потери слуха — от легкой до глубокой. Хотя некоторые из них используют вспомогательные технологии (источник — «Вспомогательные устройства для людей с нарушениями слуха, голоса, речи или языка»), они не являются повсеместными.
Для обеспечения доступа должны предоставляться текстовые альтернативы. Видео должны иметь ручные субтитры, а для аудиоконтента должны быть предоставлены расшифровки. Кроме того, из-за высокого уровня языковой депривации среди глухих и слабослышащих, следует учитывать упрощение текста.
Глухие и слабослышащие люди также представляют значительную аудиторию пользователей — «466 миллионов человек в мире имеют инвалидизирующую потерю слуха», — говорится в справке ВОЗ «Глухота и потеря слуха».
Люди с нарушениями мобильности
У этих людей есть ограничения, связанные с движением, которые могут включать чисто физические проблемы (такие как потеря конечности или паралич) или неврологические/генетические расстройства, приводящие к слабости или потере контроля над конечностями. Некоторым людям может быть трудно выполнять точные движения рук, необходимые для использования мыши, в то время как другие могут быть более серьезно поражены, возможно, будучи значительно парализованными до такой степени, что им необходимо использовать head pointer для взаимодействия с компьютерами.
Такой тип инвалидности также может быть следствием пожилого возраста, а не какой-либо конкретной травмы или состояния, и он также может быть результатом аппаратных ограничений — у некоторых пользователей может не быть мыши.
Обычно это влияет на веб-разработку через требование доступности элементов управления с клавиатуры — мы обсудим доступность с клавиатуры в последующих статьях модуля, но полезно попробовать использовать некоторые веб-сайты только с клавиатуры, чтобы понять, как это работает. Можете ли вы использовать клавишу Tab для перемещения между различными элементами управления веб-формы, например? Более подробную информацию об управлении с клавиатуры вы можете найти в разделе Используйте семантические элементы управления интерфейсом, где это возможно.
Что касается статистики, то значительное число людей имеют нарушения мобильности. Отчет «Инвалидность и функционирование (неинституционализированные взрослые от 18 лет и старше)» Центров по контролю и профилактике заболеваний США сообщает, что в США «Процент взрослых с любыми трудностями в физическом функционировании: 16,1%».
Люди с когнитивными нарушениями
Когнитивные (ментальные) нарушения относятся к широкому спектру ограниченных возможностей — от людей с интеллектуальными нарушениями, имеющими самые ограниченные возможности, до всех нас, с возрастом испытывающих трудности с мышлением и памятью. Этот спектр включает людей с психическими заболеваниями, такими как депрессия и шизофрения. Он также включает людей с трудностями в обучении, такими как дислексия и синдром дефицита внимания и гиперактивности. Важно, что, хотя в клинических определениях когнитивных нарушений существует большое разнообразие, люди с ними сталкиваются с общим набором функциональных проблем. К ним относятся трудности с пониманием содержания, запоминанием порядка выполнения задач и путаница, вызванная непоследовательным макетом веб-страниц.
Хорошая основа доступности для людей с когнитивными нарушениями включает:
- Предоставление контента более чем одним способом, например, с помощью преобразования текста в речь или видео.
- Понятный контент, например, текст, написанный в соответствии со стандартами ясного языка.
- Концентрация внимания на важном содержании.
- Минимизация отвлекающих факторов, таких как ненужный контент или реклама.
- Единообразный макет и навигация по веб-страницам.
- Знакомые элементы, такие как подчеркнутые ссылки синего цвета для непосещённых и фиолетового для посещённых.
- Разделение процессов на логические, необходимые этапы с индикаторами прогресса.
- Максимально простая, но безопасная аутентификация на веб-сайте.
- Упрощение заполнения форм, например, с помощью понятных сообщений об ошибках и простого исправления ошибок.
Примечания
- Проектирование с учётом когнитивной доступности приводит к хорошим практикам дизайна. Они принесут пользу всем.
- Многие люди с когнитивными нарушениями также имеют физические ограничения. Веб-сайты должны соответствовать Руководствам по доступности веб-контента Консорциума W3C, включая рекомендации по когнитивной доступности.
- Целевая группа по доступности для людей с когнитивными нарушениями и трудностями в обучении W3C разрабатывает рекомендации по веб-доступности для людей с когнитивными нарушениями.
- У WebAIM есть страница, посвящённая когнитивным аспектам, с соответствующей информацией и ресурсами.
- Центры по контролю и профилактике заболеваний США оценивают, что по состоянию на 2018 год каждый четвёртый гражданин США имеет инвалидность, и среди них когнитивные нарушения являются наиболее распространёнными среди молодежи.
- В США некоторые интеллектуальные нарушения исторически назывались «умственной отсталостью» («mental retardation»). Многие теперь считают этот термин оскорбительным, поэтому его следует избегать.
- В Великобритании некоторые интеллектуальные нарушения называются «трудностями в обучении» (learning disabilities или learning difficulties).
Внедрение доступности в ваш проект
Распространённым мифом о доступности является то, что это дорогая «дополнительная опция», которую нужно реализовывать в проекте. Этот миф может оказаться правдой, если:
- Вы пытаетесь «доработать» доступность для существующего веб-сайта, имеющего значительные проблемы в этой области.
- Вы начали задумываться о доступности и обнаружили связанные с ней проблемы на поздних стадиях проекта.
Однако если вы учитываете доступность с самого начала проекта, стоимость обеспечения доступности большей части контента должна быть минимальной.
При планировании проекта включите тестирование на доступность в свой процесс тестирования, так же как вы тестируете для любой другой важной целевой аудитории (например, для целевых настольных или мобильных браузеров). Тестируйте рано и часто, в идеале проводя автоматизированные тесты для выявления программно обнаруживаемых отсутствующих функций (таких как отсутствие альтернативного текста для изображений или плохой текст ссылок — Используйте содержательные текстовые метки), а также проводя тестирование с группами пользователей с ограниченными возможностями, чтобы увидеть, насколько хорошо работают для них более сложные функции сайта. Например:
- Удобен ли мой виджет выбора даты для пользователей скринридеров?
- Если контент обновляется динамически, узнают ли об этом слабовидящие пользователи?
- Доступны ли мои кнопки пользовательского интерфейса как для пользователей клавиатуры, так и для сенсорного интерфейса?
Вы можете и должны вести список потенциальных проблемных областей в вашем контенте, которые потребуют доработки для обеспечения доступности, убедиться, что они тщательно протестированы, и продумать решения или альтернативы. Текстовый контент (как вы увидите в следующей статье) прост, но как насчет вашего мультимедийного контента и ваших впечатляющих 3D-графиков? Вам следует изучить бюджет вашего проекта и подумать о доступных вам решениях для обеспечения доступности такого контента. Один из вариантов — расшифровать весь ваш мультимедийный контент, что, хотя и дорого, но возможно.
Также будьте реалистами. «100% доступность» — это недостижимый идеал — вы всегда столкнетесь с каким-то крайним случаем, когда определённому пользователю будет трудно использовать определённый контент — но вы должны сделать всё возможное. Если вы планируете включить впечатляющую 3D-круговую диаграмму, созданную с помощью WebGL, вы можете включить таблицу данных в качестве доступной альтернативы представления данных. Или вы можете просто включить таблицу и избавиться от 3D-круговой диаграммы — таблица доступна для всех, быстрее создаётся, менее требовательна к ЦП и проще в обслуживании.
С другой стороны, если вы работаете над сайтом-галереей, демонстрирующим интересные произведения 3D-искусства, было бы неразумно ожидать, что каждое произведение будет идеально доступно для слабовидящих, учитывая, что это полностью визуальная среда.
Чтобы показать, что вы заботитесь о доступности и продумали ее, опубликуйте на своем сайте заявление о доступности, в котором подробно опишите вашу политику в отношении доступности и какие шаги вы предприняли для обеспечения доступности сайта. Если кто-то уведомит вас о проблеме с доступностью на вашем сайте, начните диалог с ним, проявите сочувствие и примите разумные меры для ее устранения.
Подведём итог:
- Учитывайте доступность с самого начала проекта и тестируйте рано и часто. Как и любая другая ошибка, проблема доступности становится дороже в исправлении, чем позже она обнаружена.
- Помните, что многие лучшие практики доступности приносят пользу всем, а не только пользователям с ограниченными возможностями. Например, лаконичная семантическая разметка полезна не только для скринридеров, но и быстро загружается и производительна. Это полезно для всех, особенно тех, кто использует мобильные устройства и/или медленные соединения.
- Опубликуйте заявление о доступности на своем сайте и взаимодействуйте с людьми, у которых возникли проблемы.
Рекомендации по доступности и законодательство
Существует множество контрольных списков и наборов рекомендаций, на которых можно основывать тесты доступности, что поначалу может показаться ошеломляющим. Наш совет — ознакомиться с основными областями, требующими внимания, а также понять общую структуру руководств, наиболее актуальных для вас.
- Для начала Консорциум W3C опубликовал большой и очень подробный документ, содержащий очень точные, не зависящие от технологий критерии соответствия требованиям доступности. Он называется Руководства по доступности веб-контента (WCAG), и его, мягко говоря, нелегко прочитать. Критерии разделены на четыре основные категории, которые определяют, как реализации могут быть сделаны воспринимаемыми, управляемыми, понятными и надежными. Лучшее место, чтобы получить краткое введение и начать обучение, — это WCAG в двух словах. Нет необходимости изучать все критерии WCAG — будьте в курсе основных проблемных областей и используйте различные методы и инструменты для выявления любых областей, не соответствующих критериям WCAG (подробнее об этом ниже).
- В вашей стране также может быть конкретное законодательство, регулирующее необходимость обеспечения доступности веб-сайтов, обслуживающих ее население — например, EN 301 549 в ЕС, Раздел 508 Закона о реабилитации в США, Федеральное постановление о безбарьерной информационной технологии в Германии, Правила доступности 2018 в Великобритании, Accessibilità в Италии, Закон о дискриминации по признаку инвалидности в Австралии и т.д. W3C ведет список Законов и политик в области веб-доступности по странам.
Таким образом, хотя WCAG является набором рекомендаций, в вашей стране, вероятно, существуют законы, регулирующие веб-доступность, или, по крайней мере, доступность услуг, доступных для общественности (которые могут включать веб-сайты, телевидение, физические пространства и т.д.). Разумно выяснить, каковы ваши законы. Если вы не прилагаете усилий для проверки доступности вашего контента, вы можете нести юридическую ответственность, если люди пожалуются.
Это звучит серьёзно, но на самом деле вам просто нужно рассматривать доступность как главный приоритет в вашей практике веб-разработки, как описано выше. В случае сомнений обратитесь за советом к квалифицированному юристу. Мы не будем давать больше советов, поскольку мы не юристы.
API доступности
Веб-браузеры используют специальные API доступности (предоставляемые базовой операционной системой), которые предоставляют информацию, полезную для вспомогательных технологий — они в основном склонны использовать семантическую информацию, поэтому эта информация не включает такие вещи, как стили или JavaScript. Эта информация структурирована в виде дерева, называемого деревом доступности.
В разных операционных системах доступны разные API доступности:
- Windows: MSAA/IAccessible, UIAExpress, IAccessible2
- macOS: NSAccessibility
- Linux: AT-SPI
- Android: Accessibility framework
- iOS: UIAccessibility
Когда собственной семантической информации, предоставляемой HTML-элементами в ваших веб-приложениях, недостаточно, вы можете дополнить ее функциями из спецификации WAI-ARIA, которые добавляют семантическую информацию в дерево доступности. Вы можете узнать больше о WAI-ARIA в нашей статье Основы WAI-ARIA.
Резюме
Эта статья должна была дать вам полезный общий обзор доступности, показать, почему она важна, и рассмотреть, как вы можете внедрить её в свой рабочий процесс. Теперь у вас также должно возникнуть желание узнать о деталях реализации, которые могут сделать сайты доступными, и о том, какие инструменты могут в этом помочь. В следующей статье мы рассмотрим инструменты обеспечения доступности.