Web Accessibility Academy · Урок

aria-label и aria-labelledby

Выбирайте между встроенным и указанным по ссылке именем.

Урок 2 из 413 шагов

«aria-label и aria-labelledby» — бесплатный урок Web Accessibility Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Web Accessibility Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Web Accessibility Academy содержит 4 уроков всего.

Два способа задать имя

Когда нативной подписи недостаточно, у вас есть два инструмента ARIA: aria-label для встроенной строки и aria-labelledby для ссылки на существующий текст.

aria-label содержит строку

Используйте aria-label, когда нет видимого текста, который можно было бы использовать. Введите произносимое имя непосредственно в сам элемент.

<button aria-label="Search">🔍</button>

aria-labelledby содержит ID

Используйте aria-labelledby, когда видимый текст на странице может служить именем. Его значение — это ID данного элемента, а не строка.

<h2 id="sec">Billing</h2>
<section aria-labelledby="sec">...</section>

Предпочитайте видимый текст

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

labelledby может объединять ID

Укажите в aria-labelledby несколько ID, разделённых пробелами, и браузер объединит их текст в одно имя в заданном порядке.

<span aria-labelledby="verb noun">Go</span>
<span id="verb">Delete</span> <span id="noun">file</span>

labelledby важнее label

Если заданы оба атрибута, aria-labelledby имеет приоритет. Браузер полностью игнорирует aria-label, поэтому не рассчитывайте на их объединение.

Элемент может назвать сам себя

С помощью aria-labelledby элемент может ссылаться на собственный ID. Это удобно, чтобы назвать область текстом её видимого заголовка.

label невидим

aria-label никогда не появляется на экране. Он меняет только то, что объявляет вспомогательная технология, поэтому зрячие пользователи не увидят разницы.

Остерегайтесь ловушки перевода

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

ID должны совпадать точно

ID в aria-labelledby должен соответствовать реальному ID элемента. Опечатка незаметно оставит элемент вообще без вычисленного имени.

Выбирайте источник истины

Определите, где находится имя. Если оно уже отображается на экране, используйте aria-labelledby; если оно существует только для вспомогательной технологии, используйте aria-label.

Быстрая проверка

В разделе уже отображается заголовок h2. Как следует назвать этот раздел?

Итоги: label или labelledby

Вы узнали, что aria-labelledby используют для существующего видимого текста, а aria-label — для невидимых встроенных имён, не ожидая их объединения. 🎯

Можно начать бесплатно

Изучай HTML с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
30
Уроки
120

Часто задаваемые вопросы

Урок «aria-label и aria-labelledby» бесплатный?

Да — полный текст урока «aria-label и aria-labelledby» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Web Accessibility Academy, подпишись на CoddyKit PRO. Курс Web Accessibility Academy содержит 4 уроков всего.

Чему я научусь в уроке «aria-label и aria-labelledby»?

Выбирайте между встроенным и указанным по ссылке именем. Ты практикуешь Web Accessibility Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Web Accessibility Academy?

Предыдущий опыт не требуется. Web Accessibility Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.

Сколько времени занимает урок «aria-label и aria-labelledby»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Web Accessibility Academy?

Да. Каждый урок Web Accessibility Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Вычисление доступного имени без загадок
  2. aria-label и aria-labelledby
  3. aria-describedby для дополнительного контекста
  4. Распространённые ошибки именования, из-за которых элементы управления становятся беззвучными
← Назад к Web Accessibility Academy