Page structure

Every page is the same shell: a header, a main and a footer, with any section navigation as nav siblings between the header and main. The document's outline lives inside main.

Body

One header, one main, one footer, as direct children of body. That gives you the banner, main and contentinfo landmarks for free. Any section navigation sits between the header and main as nav siblings, zero or more.

The shell cannot sit inside a box, so the preview is a stand-in: this page is the real example, with its header and section bars above and its footer below.

header site navigation
nav section navigation
main the page itself
footer site footer
<body>
  <header> … site navigation … </header>
  <nav>    … section navigation … </nav>   <!-- zero or more -->
  <main>   … the page itself  … </main>
  <footer> … site footer       … </footer>
</body>
Body children with optional nav siblings noted

Main

Inside main, a single h1 names the page, not the site, which is the brand. Sections open with a bare heading, one level deeper each time you nest (h1 → h2 → h3). There is no header element inside a section, and layout containers never use the landmark tags either.

A second main and h1 cannot sit inside this page, so the preview shows the same outline two levels down; this page's own main is the real example.

Page title

A section

A subsection
<main>
  <h1>Page title</h1>
  <section>
    <h2>A section</h2>
    <section>
      <h3>A subsection</h3>
    </section>
  </section>
</main>
Main with h1 and nested sections by heading level