Комментарии (1)
🐱
deepseek-v3.2PrepBro AI6 апр. 2026 г.(ред.)
Ответ сгенерирован нейросетью и может содержать ошибки
Пример семантического блока в HTML
В современной веб-разработке семантические блоки (semantic elements) — это элементы HTML, которые чётко описывают своё назначение и содержание как для браузера, так и для разработчика. В отличие от универсальных <div> или <span>, семантические теги придают структуре смысл. Яркий и полный пример — структура типичной статьи в блоге.
Пример кода: статья с семантическими блоками
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Мой блог о веб-разработке</title>
</head>
<body>
<!-- Основной контент страницы -->
<main>
<!-- Независимый, самодостаточный блок статьи -->
<article class="blog-post">
<!-- Шапка статьи с заголовком и метаданными -->
<header>
<h1>Введение в семантический HTML</h1>
<p>
Опубликовано <time datetime="2023-10-26T14:30">26 октября 2023</time>
автором <strong>Анна Петрова</strong> в категории <a href="#">Веб-стандарты</a>.
</p>
</header>
<!-- Основное содержание статьи, можно использовать несколько секций -->
<section>
<h2>Что такое семантика?</h2>
<p>Семантические элементы явно описывают свой смысл. Например,
<code><nav></code> обозначает навигацию, а <code><section></code> — тематическую группу контента.</p>
<p>Это улучшает:</p>
<ul>
<li><strong>Доступность (Accessibility)</strong>: Скринридеры чётко ориентируются в структуре.</li>
<li><strong>SEO</strong>: Поисковые системы лучше понимают содержание страницы.</li>
<li><strong>Читаемость кода</strong>: Разработчикам проще поддерживать проект.</li>
</ul>
</section>
<section>
<h2>Пример навигации</h2>
<!-- Навигационный блок, связанный с данной статьёй -->
<nav aria-label="Навигация по разделам статьи">
<ol>
<li><a href="#semantics">Семантика</a></li>
<li><a href="#example">Пример</a></li>
<li><a href="#conclusion">Заключение</a></li>
</ol>
</nav>
<p>... (основной текст раздела) ...</p>
</section>
<!-- Отдельный блок для иллюстрации с подписью -->
<figure>
<img src="html-structure.png" alt="Схема семантической структуры HTML5-документа">
<figcaption>Рис. 1. Визуализация семантической разметки страницы.</figcaption>
</figure>
<!-- Подвал статьи с дополнительной информацией -->
<footer>
<h3>Теги статьи</h3>
<p>
<a href="#">HTML5</a>,
<a href="#">Семантика</a>,
<a href="#">Веб-стандарты</a>
</p>
<!-- Боковая панель, косвенно связанная с содержанием -->
<aside>
<h4>Читайте также</h4>
<ul>
<li><a href="#">Доступность для мобильных устройств</a></li>
</ul>
</aside>
<p>© 2023 Мой блог. Все права защищены.</p>
</footer>
</article>
</main>
<!-- Глобальная навигация сайта (не связана напрямую со статьёй) -->
<nav aria-label="Основная навигация">
<ul>
<li><a href="/">Главная</a></li>
<li><a href="/blog">Блог</a></li>
<li><a href="/about">Обо мне</a></li>
</ul>
</nav>
</body>
</html>
Ключевые семантические элементы в примере:
<article>— определяет независимый, самодостаточный блок контента (статью, пост), который можно извлечь и распространять отдельно.<header>— задаёт вводную часть для своего ближайшего родительского раздела или всей страницы. Здесь это заголовок статьи и метаданные.<section>— тематически группирует контент внутри документа, обычно с собственным заголовком (<h2>-<h6>). В статье это логические разделы.<nav>— обозначает блок навигационных ссылок (как основное меню сайта, так и оглавление статьи).<figure>и<figcaption>— оборачивают самостоятельный иллюстративный контент (изображение, диаграмму) с поясняющей подписью.<footer>— содержит заключительную информацию для своего ближайшего родительского раздела (автор, теги, связанные ссылки).<aside>— представляет контент, косвенно связанный с основным (боковая панель, реклама, примечание).<main>— указывает на основное, уникальное содержимое страницы (не должно включать шапку, подвал, навигацию).<time>— позволяет машиночитаемо (атрибутdatetime) отмечать дату и время.
Ожидаемое поведение и преимущества:
- Для браузеров и CSS — блоки ведут себя аналогично
<div>, но обладают встроенным смыслом. - Для скринридеров и вспомогательных технологий — пользователь слышит: "Заголовок статьи, уровень 1", "Навигация", "Рисунок с подписью". Это резко улучшает доступность (a11y).
- Для поисковых систем — роботы точно определяют основной контент (
<main>,<article>), заголовки и структуру, что положительно влияет на SEO и представление в сниппетах. - Для разработчиков — код самодокументируется. Вместо
<div id="header">мы видим<header>, что делает вёрстку интуитивно понятной для всей команды и упрощает долгосрочную поддержку.
Этот пример демонстрирует принцип семантической вёрстки: использовать HTML-элементы в соответствии с их смысловым назначением, а не только для стилизации. Такой подход создаёт более качественную, доступную и технологически продвинутую веб-страницу.