г. Москва, ул. Дубининская, д. 57, стр. 2, пом. III, офис 208.29
info@maximusmedia.pro
г. Москва, ул. Дубининская, д. 57, стр. 2, пом. III, офис 208.29

Разметка ARIA: что это

Разметка ARIA (Accessible Rich Internet Applications) — это специальный набор атрибутов, разработанный консорциумом W3C для улучшения доступности веб-приложений и сайтов для людей с ограниченными возможностями, особенно для пользователей, использующих экранные читалки и другие ассистивные технологии.

499
Время чтения: 2 минуты
Дата публикации

Что такое ARIA

ARIA (Accessible Rich Internet Applications) — это спецификация для добавления семантической информации в HTML-код, чтобы помочь вспомогательным технологиям (экранным читалкам, голосовым интерфейсам и т. д.) лучше понимать структуру и поведение элементов на веб-странице.

Она особенно полезна в ситуациях, когда используются кастомные элементы интерфейса (например, выпадающие списки, вкладки, модальные окна), которые не имеют стандартного HTML-аналогa.

Зачем нужна ARIA

Стандартные HTML-элементы вроде <button>, <input>, <a> уже обеспечивают базовую доступность, но если вы создаете собственные элементы с использованием <div> или <span>, они становятся невидимыми или непонятными для ассистивных технологий.

ARIA позволяет:

  • Обозначить роль элемента (role)
  • Указать его текущее состояние или свойства (aria-*)
  • Связать элементы логически

Основные атрибуты ARIA

Атрибут Назначение
role Определяет, что делает элемент (например, button, dialog, navigation)
aria-label Устанавливает текстовую метку для элемента
aria-labelledby Связывает элемент с другим элементом, задающим его название
aria-hidden Указывает, виден ли элемент для читалки (независимо от видимости на экране)
aria-expanded Показывает, развернут ли элемент, например, в аккордеоне или меню
aria-checked Применяется к элементам типа чекбоксов или переключателей

Примеры использования

Пример 1: Кнопка из <div> с ARIA



<div role="button" tabindex="0" aria-pressed="false" aria-label="Показать меню">

☰

</div>

Здесь role=»button» сообщает, что элемент работает как кнопка, а tabindex=»0″ делает его фокусируемым с клавиатуры.

✅  Пример 2: Модальное окно



<div role="dialog" aria-labelledby="dialogTitle" aria-describedby="dialogDesc">

<h2 id="dialogTitle">Подтверждение удаления</h2>

<p id="dialogDesc">Вы уверены, что хотите удалить файл?</p>

<button>Да</button>

<button>Нет</button>

</div>

Экранная читалка прочтет заголовок и описание при открытии диалога.

  Пример 3: Развертывающееся меню



<button aria-expanded="false" aria-controls="menuList" id="menuBtn">Меню</button>

<ul id="menuList" hidden>

<li><a href="#">Пункт 1</a></li>

<li><a href="#">Пункт 2</a></li>

</ul>

Здесь aria-expanded показывает, развернуто ли меню, а aria-controls связывает кнопку с соответствующим списком.

⚠️ Рекомендации по использованию

  1. Используйте ARIA только там, где не хватает стандартного HTML. Лучше <button> с нативным поведением, чем <div role=»button»>.
  2. Не злоупотребляйте aria-hidden=»true», это скроет элемент от читалок, даже если он визуально виден.
  3. Поддерживайте логику клавиатуры. Например, если это role=»menu», нужно обеспечить навигацию с клавиатуры.
  4. Тестируйте доступность с помощью экранных читалок, таких как NVDA, VoiceOver, JAWS.

Заключение

ARIA — это мощный инструмент для разработки доступных пользовательских интерфейсов. Он позволяет «объяснить» интерфейс тем пользователям, которые взаимодействуют с сайтом не глазами и мышкой, а через голос или тактильные устройства. Однако при его применении важно соблюдать баланс: ARIA дополняет HTML, но не заменяет его.

Дмитрий Ларионов
Основатель маркетингового агентства полного цикла Maximus Media

Напишем или позвоним Вам первыми в течение 10 минут

    Другие термины
    Крауд-ссылки

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

    1363
    Время чтения 1 минута
    Динамический URL

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

    1088
    Время чтения 1 минута
    CDN

    CDN (Content Delivery Network) — это распределённая географически сеть серверов и программных средств, задача которой — максимально быстро и надёжно доставлять пользователям статический и динамический контент (веб-страницы, медиафайлы, скрипты, стили и пр.) из ближайшего к ним узла сети.

    557
    Время чтения 1 минута
    Каннибализация ключей

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

    443
    Время чтения 1 минута
    Cumulative Layout Shift (CLS)

    Cumulative Layout Shift (CLS) — это один из ключевых показателей, оценивающих визуальную стабильность веб-страницы. Он показывает, насколько неожиданно и непредсказуемо элементы на странице «прыгают» во время её загрузки или взаимодействия пользователя с ней.

    588
    Время чтения 1 минута
    Склеивание доменов

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

    807
    Время чтения 1 минута
    ×
    Екатерина Ефремова
    Екатерина Ефремова Здравствуйте! Готова помочь вам. Напишите мне, если у вас появятся вопросы.
    +7 (123) 456-78-90 info@maximusmedia.pro Отдел работы с клиентами
    ул. Дубининская, д. 57, стр. 2, пом. III, офис 208.29, Москва, Московская область, 115054, Россия