Element HTML main reprezentuje główną lub właściwą treść dokumentu. Nie należy go mylić z elementem body, który reprezentuje treść dokumentu w ogóle, w odróżnieniu od sekcji nagłówkowej z metadanymi.
Główna treść dokumentu to treść dotycząca jego podstawowego tematu, a więc najczęściej odnosząca się do tytułu zawartego w nagłówku pierwszego poziomu.
Ponieważ element main reprezentuje główną treść dokumentu, na stronie może znajdować się tylko jeden jego egzemplarz, który nie jest ukryty.
Jako że jego zadaniem jest między innymi umożliwić różnym technologiom, takim jak czytniki ekranu, odróżnienie treści właściwej od innych, bardziej konstrukcyjnych i powtarzalnych elementów strony, element main nie może być potomkiem elementów article, aside, footer, header oraz nav.
Ponadto element main nie jest przeznaczony do oznaczania powtarzalnych sekcji, takich jak stopka, formularz wyszukiwania, logo witryny, nawigacja witryny, informacja o prawach autorskich itp.
Przykład użycia elementu HTML main
<body>
<header>
...
</header>
<main>
<h1>Język C++</h1>
<article>Język C++ to język programowania stworzony przez Bjarne Stroustrupa…</article>
</main>
<footer>
…
</footer>
</body>Specyfikacja
| Modele treści HTML5 | Treść ogólna, treść wyczuwalna |
|---|---|
| Elementy nadrzędne | Wszystkie elementy, w których można używać elementów treści ogólnej, ale pod warunkiem, że jest on prawidłowo umiejscowiony w hierarchii dokumentu, czyli znajduje się w elemencie html, body, div, form |
| Elementy potomne | Elementy treści ogólnej |
| Znaczniki | Znaczniki otwierający i zamykający są obowiązkowe |
| Interfejs DOM | HTMLElement |
Atrybuty obowiązkowe
Element HTML main nie ma atrybutów obowiązkowych.
Atrybuty opcjonalne
Element main obsługuje atrybuty globalne i atrybuty zdarzeniowe.
