Какие семантические теги появились в HTML5
Семантические теги HTML5 — это элементы разметки, которые описывают смысл (семантику) своего содержимого, в отличие от универсального <div>, не несущего смысловой нагрузки.
Аналогия из жизни: семантические теги — это как таблички на дверях в офисе: «Приёмная», «Переговорная», «Серверная». Без них все двери одинаковые (как
<div>), и понять, что за ними, можно только заглянув внутрь.
Основные семантические элементы
| Тег | Назначение | Аналог до HTML5 |
|---|---|---|
<header> |
Шапка страницы или раздела | <div class="header"> |
<footer> |
Подвал страницы или раздела | <div class="footer"> |
<nav> |
Блок навигации | <div class="nav"> |
<main> |
Основное содержимое (один на страницу) | <div id="content"> |
<article> |
Самостоятельный контент (статья, пост) | <div class="article"> |
<section> |
Логический раздел с заголовком | <div class="section"> |
<aside> |
Боковое или дополнительное содержимое | <div class="sidebar"> |
<figure> |
Иллюстрация с подписью | <div class="image-wrapper"> |
<figcaption> |
Подпись к <figure> |
<p class="caption"> |
Пример семантической структуры
Полный пример страницы с семантическими тегами
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<title>Семантическая страница</title>
</head>
<body>
<header>
<h1>Название сайта</h1>
<nav>
<ul>
<li><a href="/">Главная</a></li>
<li><a href="/about">О нас</a></li>
</ul>
</nav>
</header>
<main>
<article>
<h2>Заголовок статьи</h2>
<section>
<h3>Первый раздел</h3>
<p>Содержимое раздела.</p>
</section>
<figure>
<img src="diagram.png" alt="Диаграмма архитектуры">
<figcaption>Рис. 1 — Диаграмма архитектуры приложения</figcaption>
</figure>
</article>
<aside>
<h3>Полезные ссылки</h3>
<ul>
<li><a href="/docs">Документация</a></li>
</ul>
</aside>
</main>
<footer>
<p>© 2026 Все права защищены</p>
</footer>
</body>
</html>
Зачем это важно
- Доступность (accessibility): экранные читалки используют семантические теги для навигации. Пользователь может перейти сразу к
<main>или<nav> - SEO: поисковые системы лучше понимают структуру страницы и точнее индексируют контент
- Читаемость кода: разработчику проще ориентироваться в разметке, чем в наборе
<div class="...">
Частые ошибки
- Использование
<section>вместо<div>для визуальной обёртки без смысловой нагрузки —<section>подразумевает логический раздел с заголовком - Вложение
<header>или<footer>внутрь себя — запрещено спецификацией - Оборачивание всей страницы в
<article>— этот тег для самодостаточного контента - Несколько
<main>на странице — допускается только один
Как используется в 2026
Семантическая разметка — обязательное требование при аудите доступности (WCAG). Java-бэкенд-разработчику важно понимать семантические теги при работе с серверным рендерингом (Thymeleaf, JSP) и при создании REST API, возвращающих HTML-фрагменты.
На собеседовании: перечислите основные теги:
<header>,<nav>,<main>,<article>,<section>,<aside>,<footer>. Объясните, что они придают смысл разметке (в отличие от<div>), помогают screen readers и улучшают SEO. Упомяните, что<main>может быть только один на странице.