Kodokon kodokon.com

Семантический HTML: структура настоящей страницы

Замени безликие div на теги, которые придают смысл твоей структуре.

8 мин · 3 вопросов

Открыть этот урок в Kodokon

Страница, целиком собранная из div, работает, но она ни о чём не говорит: ни программам чтения с экрана, ни поисковым системам, ни коллеге, который откроет твой код через полгода. Семантические теги описывают роль каждой области: header, nav, main, article, section, footer.

HTML
<body>
  <header>
    <nav aria-label="Main navigation">
      <a href="/">Home</a>
      <a href="/articles">Articles</a>
      <a href="/contact">Contact</a>
    </nav>
  </header>

  <main>
    <h1>The blog for curious devs</h1>
  </main>

  <footer>
    <p>&copy; 2026 Kodokon. All rights reserved.</p>
  </footer>
</body>
Стандартный семантический каркас страницы.

header объединяет шапку страницы (логотип, навигация), footer - завершающую информацию (правовые сведения, второстепенные ссылки). main содержит основное содержимое и должен быть единственным на странице. nav отмечает область навигации: главное меню, хлебные крошки или оглавление.

Самое тонкое различие: article против section. Простое правило: если блок имеет смысл вне контекста (статья блога, комментарий, карточка товара), это article. Если это тематическая группировка внутри содержимого, со своим заголовком, это section.

HTML
<main>
  <article>
    <h1>Understanding semantic HTML</h1>
    <section>
      <h2>Accessibility</h2>
      <p>Screen readers rely on the
      structure to navigate.</p>
    </section>
    <section>
      <h2>SEO</h2>
      <p>Search engines understand the page better.</p>
    </section>
  </article>
</main>
Самостоятельная статья, разбитая на озаглавленные разделы.

Задача на подумать: на странице товара в интернет-магазине как ты разметишь список отзывов покупателей? У каждого отзыва есть автор, дата и самодостаточное содержимое: значит, каждый отзыв - это article, а блок «Отзывы покупателей», который их объединяет и имеет свой заголовок, - это section.

Проверка знаний

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

  1. Сколько элементов main должно быть на странице?
    • Ровно один, с основным содержимым
    • По одному на каждую секцию страницы
    • Максимум два: один для десктопа, один для мобильных
  2. Какой элемент выбрать для комментария в блоге, который имеет смысл вне контекста?
    • section
    • div
    • article
    • aside
  3. В чём главное преимущество семантического HTML перед сплошными div?
    • Страница загружается быстрее
    • Машины (программы чтения с экрана, поисковые системы) понимают структуру
    • Семантические теги применяют автоматическое оформление