Модуль 2 · Урок 5

Документ, landmarks і heading outline

Semantic HTML описує purpose і relationships, а не бажаний розмір або колір. Почніть із коректного document shell, потім позначте регіони й лише після цього будуйте логічну heading hierarchy.

Document shellLandmarksSectionsHeadings

Мінімальний document shell

<!doctype html>
<html lang="uk">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>BookFlow — добірка книг</title>
</head>
<body>...</body>
</html>

title описує document у вкладці й результатах пошуку; видимий page heading живе у body. Атрибут lang задає основну мову content.

Обирайте елемент за purpose

ЕлементКоли доречнийТипова помилка
headerВступна частина page або sectionВважати, що він завжди лише один
navВажлива колекція navigation linksОбгортати кожні два links
mainУнікальний основний content documentКілька видимих main regions
articleСамодостатній матеріал, що має сенс окремоВикористовувати як generic card
sectionТематичний розділ, зазвичай із headingЗастосовувати замість кожного div
asideДотичний, але не основний contentОбирати лише через праву колонку

Heading hierarchy — карта змісту

Один page topich1 називає головну тему сторінки.
Peer sectionsРозділи одного рівня мають однаковий heading level.
Nested subsectionДочірній heading слідує структурі content, не font size.

Не обирайте h4, бо він «менший». Візуальний масштаб — відповідальність CSS. Якщо блок не потребує власного heading і не має окремого purpose, neutral div може бути правильним.

Практика

  1. Намалюйте content outline starter page без HTML.
  2. Заповніть landmark-map.csv і heading-outline.csv.
  3. Замініть лише ті neutral containers, для яких можете назвати semantic purpose.
  4. Перевірте один main, meaningful headings та navigation labels у DOM.

Офіційні джерела

Практична перевірка · урок 5 з 60

Закріпіть матеріал уроку

Три сценарні питання. Для зарахування уроку потрібно дати щонайменше дві правильні відповіді.

1. Де має бути видимий page heading?
2. Навіщо html lang=uk?
3. Який element містить унікальний основний content page?