UI/UX продуктовый дизайн

Дизайн для платформ

Адаптация дизайн-макетов под скрин-ридер


Зачем это нужно

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

У этого есть ряд преимуществ как для бизнеса, так и для пользователей

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

Для пользователей: улучшается жизнь за счет того, что пользователям становиться легче и быстрее ориентироваться в интерфейсе.

Пример неадаптированного интерфейса

Например, вот как может выглядеть не адаптированный интерфейс для пользователей, которые используют скрин-ридер.

  • Не у всех интерактивных элементов есть обозначение, что это кнопка, ссылка, изображение и так далее
  • У кнопок-иконок нет корректного названия и приходится угадывать их назначение
  • Нет групп и это увеличивает продолжительность навигации, если что-то не интересно и нужно пропустить
  • Отображаются ненужные для пользователей объекты, например декоративные изображения. Они не дают никакой информации для пользователя и тратят его время

Пример адаптированного интерфейса

  • У всех интерактивных элементов есть обозначение и это сразу дает пользователю понимание какую функцию выполняет тот или иной элемент
  • У кнопок-иконок появились корректные названия и легко понять какую функцию они выполняют
  • Появились группы и можно быстро перемещаться по ним, что экономит время для пользователя
  • Скрыты ненужные для пользователей объекты, такие как декоративные изображения

Привычный интерфейс

А вот как выглядит интерфейс для большинства пользователей

Гайд

Теперь перейдем к действиям, которые нужно сделать, чтобы адаптировать интерфейс для скрин-ридеров.

1. Определите и передайте ориентиры страницы. Только для Web

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

Самые распространенные ориентиры в HTML:

  • <header> для шапки сайта;
  • <nav> для навигации;
  • <main> для основного контента;
  • <aside> для дополнительного контента;
  • <section> для разделения страницы на смысловые блоки;
  • <footer> для подвала сайта;

2. Передайте перечень и иерархию заголовков

По статистике, навигацию по заголовкам использует до 85% пользователей скрин-ридеров.

С помощью скрин-ридеров пользователи могут прослушать полный список заголовков, выбрать заголовки конкретного уровня и ориентироваться по ним.

Поэтому передайте заголовки с правильной иерархией по убыванию — от H1 до H6. Если в вашем макете нет H1 или текущий заголовок не отвечает на вопрос «Что это за страница?», просто добавьте скрытый заголовок первого уровня.

3. Сгруппируйте элементы

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

4. Передайте правильный порядок чтения элементов для скрин-ридера

Скрин-ридер зачитывает элементы в том порядке, в котором они расположены в коде. Передать порядок чтения нужно, чтобы контент не зачитывался хаотично.

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

5. Опишите поведение компонентов

Чтобы скрин-ридер корректно озвучивал все возможные состояния компонентов опишите их. Кстати, мы в дизайн-системе уже описали озвучивание всех состояний компонентов, это можно посмотреть тут

6. Напишите альтернативные тексты для изображений и сложным иллюстрациям

Всегда добавляйте атрибут alt к тегам <img>, чтобы описать содержание изображения. Это позволяет пользователям с нарушениями зрения понимать, что изображено на картинке.

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

7. Скройте неважные элементы для скрин-ридера

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

8. Продумайте корнер-кейсы и как они будут озвучиваться

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

9. Проведите ревью после адаптации

Чтобы пользователи полноценно пользовались продуктом без ошибок важно предварительно протестировать адаптированный под скрин-ридер интерфейс.

Советы

  • Проверьте раскладку клавиатуры и язык символов

Обратите внимание на внешне идентичные, но разные английские и русские буквы. Например, русская «А» и английская «А».

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

Например, в макет вставили текст «МТС». Позже выяснилось, что скрин-ридер читает «ЭмТэСи» вместо привычного «ЭмТэЭс», так как в тексте буква «С» написана на английской раскладке.

Контролируйте раскладку клавиатуры, чтобы скрин-ридер правильно проговаривал контент.

  • Описывайте текст правильно

Текст будет читаться намного лучше, если вы его просклоняете: 1 рубль, 2 рубля, 5 рублей. В каждом языке разные способы работы с числами. В английском их два, в русском три.

А также текст в некоторых кнопках нужно изменять специально для скрин-ридер, например:

Не корректно — См все, 179 знак рубля, 30 см

Корректно — Смотреть все, 179 рублей, 30 сантиметров

  • Указывайте для ссылок и иконок осмысленные названия

Кнопки с обобщенным названием могут запутать пользователя — «Подробнее» и «Узнать больше» не имеют никакого контекста.

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

Если в макете веба нет возможности называть элемент осмысленно, придумайте ему название и попросите разработчика добавить его в доступное имя. Это имя элемента в коде, которое зачитывает скрин-ридер.

  • Указывайте названия для SVG

У ценных SVG-изображений тоже должен быть альт-текст.

Добавьте роль role="img" для изображения, а альт-текст укажите с помощью aria-labelили сочетания title и aria-labelledby.

В заключении

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