0Pricing
HTML Academy · Урок

Иерархия заголовков для экранных дикторов

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

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

Как программы чтения с экрана перемещаются по заголовкам

Пользователи программ чтения с экрана в основном перемещаются по страницам с помощью заголовков:

  • Они нажимают H, чтобы перейти к следующему заголовку
  • Они нажимают 1-6, чтобы перейти к заголовку определённого уровня
  • Они открывают список всех заголовков (подобно оглавлению)
  • Правильная иерархия заголовков необходима для такой навигации

Список заголовков в программе чтения с экрана

NVDA и JAWS могут вывести список всех заголовков на странице:

<!-- A well-structured page with this heading order: -->
<h1>HTML5 Complete Guide</h1>
  <h2>Document Structure</h2>
    <h3>The DOCTYPE</h3>
    <h3>The html head body</h3>
  <h2>Semantic Elements</h2>
    <h3>Article</h3>
    <h3>Section</h3>

<!-- Becomes a navigable list for screen reader users -->
<!-- Similar to a table of contents in a book -->

Неправильная иерархия заголовков

Распространённые ошибки в иерархии заголовков:

<!-- BAD: skipping h2, going straight from h1 to h3 -->
<h1>My Article</h1>
<h3>Introduction</h3>    <!-- Skips h2! -->
<h4>Background</h4>

<!-- BAD: using headings for visual size -->
<h4 class="huge-title">This looks big</h4>  <!-- h4 in logical order? -->

<!-- BAD: using bold text instead of headings for sections -->
<p><strong>Introduction</strong></p>  <!-- Not a heading at all -->

Правильная иерархия на практике

Пример правильной структуры заголовков для страницы документации:

<h1>HTML Forms Documentation</h1>
<h2>Overview</h2>
<h2>Form Elements</h2>
  <h3>input</h3>
    <h4>text type</h4>
    <h4>email type</h4>
  <h3>select</h3>
  <h3>textarea</h3>
<h2>Validation</h2>
  <h3>Built-in Validation</h3>
  <h3>Custom Validation</h3>

Один h1 на странице

Рекомендуемый подход: ровно один <h1> на странице:

<h1>JavaScript Array Methods</h1>
<!-- This is the page's main topic -->
<!-- Should match or closely relate to the <title> element -->
<!-- Appears as the main heading users see first -->
<!-- Search engines give it the highest SEO weight -->

Уровни заголовков отражают иерархию содержимого

Уровни заголовков выражают логическую структуру содержимого:

  • Используйте <h2> для основных разделов страницы
  • Используйте <h3> для подразделов внутри разделов h2
  • Используйте <h4> для подразделов второго уровня
  • На практике редко требуется больше четырёх уровней заголовков

Заголовки не выбирают ради визуального оформления

Никогда не выбирайте уровень заголовка только из-за его стандартного визуального размера:

/* BAD approach: h4 because it looks right: */
<h4 style="font-size: 2rem;">Section Title</h4>

/* CORRECT approach: right level, resized with CSS: */
<h2>Section Title</h2>
/* Then: h2 { font-size: 2rem; } */

/* Or: aria-label on section if heading would disrupt structure:
   — rare, usually better to fix the heading level */

WCAG 2.4.6 Заголовки и подписи

WCAG 2.4.6 (уровень AA) требует:

Заголовки и подписи должны описывать тему или назначение.

  • Заголовки должны точно описывать содержимое раздела
  • Общие заголовки вроде «Раздел» или «Подробности» не соответствуют этому критерию
  • Подписи полей формы должны описывать назначение поля

Использование заголовков в компонентах

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

<!-- BAD: hardcoded heading level in a card component -->
<div class="card">
  <h3>Card Title</h3>  <!-- What if card appears in h2 or h4 context? -->
</div>

<!-- GOOD: document context determines level -->
<!-- Component receives level as a parameter in JS frameworks -->
<!-- Or use aria-level on a generic element -->
<div role="heading" aria-level="3">Dynamic Level Heading</div>

Структура документа

Просмотрите структуру заголовков страницы в DevTools браузера или с помощью следующих инструментов:

  • Chrome → панель специальных возможностей → представление «Имя/роль»
  • Firefox → вкладка специальных возможностей
  • Расширение HeadingsMap для Chrome — показывает визуальную структуру
  • Инструмент специальных возможностей WAVE — раздел заголовков

Согласование заголовков и SEO

Иерархия заголовков соответствует рекомендациям SEO:

  • Поисковые системы анализируют иерархию заголовков, чтобы понять структуру содержимого
  • H1 = основная тема (соответствует заголовку); H2 = основные подтемы; H3 = подробности
  • Ключевые слова, естественно включённые в заголовки, улучшают сигналы релевантности страницы
  • Правильная структура заголовков = одновременно лучшая доступность и лучшее SEO

Пропуск навигации и заголовки

Сочетайте ссылки для пропуска с навигацией по заголовкам:

<!-- Skip link bypasses nav to main content: -->
<a href="#main-content" class="skip-link">Skip to main content</a>

<!-- Main content heading enables heading navigation: -->
<main id="main-content">
  <h1>Page Title</h1>
</main>
<!-- Screen reader users: skip link for fast access;
     heading navigation for page exploration -->

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

Как пользователи программ чтения с экрана обычно переходят между заголовками?

Итоги: иерархия заголовков

Основные правила доступности заголовков:

  • Один <h1> на страницу — основная тема
  • Используйте уровни заголовков по порядку — никогда не пропускайте уровни
  • Заголовки описывают содержимое, а не визуальный размер
  • Пользователи программ чтения с экрана переходят с помощью клавиши H и списка заголовков
  • Проверяйте структуру с помощью HeadingsMap или WAVE

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

Урок «Иерархия заголовков для экранных дикторов» бесплатный?

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

Чему я научусь в уроке «Иерархия заголовков для экранных дикторов»?

Структурируйте заголовки так, чтобы пользователи экранных дикторов могли эффективно перемещаться по странице Ты практикуешь HTML Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

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

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

Сколько времени занимает урок «Иерархия заголовков для экранных дикторов»?

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

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

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

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

  1. Зачем нужна доступность: уровни WCAG
  2. Иерархия заголовков для экранных дикторов
  3. Альтернативный текст изображений: когда и как
  4. Навигация с клавиатуры и порядок фокуса
← Назад к HTML Academy