Доступность SVG и MathML: стандарты альтернативного текста

Пройдите тест, узнайте какой профессии подходите и получите бесплатную карьерную консультацию
В конце подарим скидку до 55% на обучение
Я предпочитаю
0%
Работать самостоятельно и не зависеть от других
Работать в команде и рассчитывать на помощь коллег
Организовывать и контролировать процесс работы

Быстрый ответ

Чтобы улучшить доступность, используйте элементы <title> и <desc> внутри SVG, а также атрибут alttext в MathML.

HTML
Скопировать код
<!-- SVG отображает изображение -->
<svg aria-labelledby="title desc" role="img">
   <title id="title">Годовая столбчатая диаграмма роста</title>
   <desc id="desc">Диаграмма демонстрирует стабильный прирост дохода.</desc>
</svg>
HTML
Скопировать код
<!-- MathML способствует легкому восприятию математических формул -->
<math alttext="a^2 + b^2 = c^2" role="math">
   <!-- Здесь размещена математическая выражение -->
</math>

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

Обеспечение доступности с ARIA и управлением с клавиатурой

В SVG и MathML стоит применять ARIA для улучшения доступности, а также обеспечивать управление клавиатурой для тех, кто полагается на программы чтения с экрана.

SVG:

  • <title> предоставляет краткую пометку.
  • <desc> предлагает полное описание.
  • role="img" обозначает, что элемент SVG воспринимается как изображение.
  • aria-labelledby связывает элементы, предназначенные для заголовка и описания.

MathML:

  • <div> с атрибутами role="math" и aria-label создаёт контекст для голосового доступа.
  • Если уравнения слишком сложны для описания через aria-label, <ц alttext будет вам в помощь.

Добавьте tabindex="0" к элементам, чтобы их было возможно выбрать при навигации по странице с клавиатурой.

Адаптация SVG и MathML для улучшения восприятия

Чтобы SVG и MathML были удобными для любого пользователя:

1. Правильное использование SVG-элементов

  • Элементы <text> следует оставлять в исходном виде. Перевод текста в графические пути может ухудшить передачу информации.
  • В случае проблем с контролем уникальных идентификаторов, стоит рассмотреть возможность использования тегов <img> для вставки SVG.
  • Для декоративных SVG используйте aria-hidden="true", чтобы они не были восприняты читалками.

2. Текстовые альтернативы для математики и графики

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

3. Избегайте ошибок и подводных камней

  • Поддержка экранными читалками для aria-label и alttext может быть разной, поэтому необходимо использовать их с умом.
  • Следуйте за обновлениями спецификаций W3C, чтобы быть в курсе актуальных рекомендаций по лучшим практикам.

Визуализация

Alt-тekст – это голос для невидящих

Markdown
Скопировать код
<!--Image может говорить более чем тысячу слов-->
SVG (🖼): "Лицо со счастливой улыбкой, глаза, сияющие радостью. Улыбка шире просторов Техаса."
<!--Математика теперь может общаться-->
MathML (🧮): "Формула E=mc² символизирует связь между энергией, массой и скоростью света."

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

Как адаптировать работу экранных читалок

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

  • В зависимости от настроек или версий, читалки могут воспроизвести все <title> и <desc>, что не является ошибкой, а особенностью.
  • Поддержка aria-label и alttext может отличаться в разных читалках, особенно при работе с MathML.

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

Полезные материалы

  1. Home | Web Accessibility Initiative (WAI) | W3C — Основной ресурс по стандартам доступности.
  2. WebAIM: Alternative Text — Основной источник информации о создании alt-текста.
  3. Accessibility Support — SVG 2 — Всё, что вам следует знать о доступности в SVG.
  4. W3C Math Home — Главный ресурс для MathML.
  5. Accessible SVG Icons With Inline Sprites | CSS-Tricks — Отличная статья для разработчиков интерфейсов.
  6. Home Page | GBH — Истории за пределами тем о пикселях и уравнениях.
  7. ARIA Authoring Practices Guide | APG | WAI | W3C — Руководство по работе с графикой.