← Niveau 1 – Bouwer

Les 5 van 12 ⏱ 25 minuten

Header, menu en footer

Geef je pagina echte structuur zoals echte websites: een header met menu bovenaan en een footer onderaan.

Ik laat je zien: elke website heeft dezelfde onderdelen

Kijk naar een grote website: bovenaan staat een header met een naam en een menu, in het midden inhoud, en onderaan een footer met de kleine dingen. HTML heeft speciale tags voor deze onderdelen:

<body>
  <header>
    <h1>Website Name</h1>
    <nav>
      <a href="index.html">Home</a>
      <a href="second-page.html">Second Page</a>
    </nav>
  </header>

  <main>
    <h2>Here's the main content</h2>
    <p>Everything the page is about.</p>
  </main>

  <footer>
    <p>Made by Jake, 2026</p>
  </footer>
</body>
💡

Visueel verandert er voorlopig niet veel – deze tags zijn zelf niet zichtbaar. Waarom ze dan schrijven? Omdat ze orde in je code brengen: browsers, zoekmachines en schermlezers gebruiken ze om te weten wat een menu is en wat inhoud. En het beste – in de komende lessen stylen we ze, zodat het menu er echt uitziet als een menu.

Nu jij 💪

  1. Op index.html: wikkel je bestaande inhoud in deze onderdelen: een <header> bovenaan met een <h1> en een <nav> (links naar beide pagina’s), een <main> in het midden met de rest van de inhoud, en een <footer> onderaan.

  2. Doe hetzelfde op je tweede pagina. Header en footer moeten op beide pagina’s precies hetzelfde zijn – kopieer ze gewoon over.

  3. Opslaan, verversen, rondklikken: werkt het menu vanaf beide pagina’s?

🏫 Schoolwebsite – oplossing (index.html)
<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8">
    <title>Riverside Elementary</title>
  </head>
  <body>
    <header>
      <h1>Riverside Elementary School</h1>
      <nav>
        <a href="index.html">Home</a>
        <a href="lunch-menu.html">Lunch Menu</a>
      </nav>
    </header>

    <main>
      <img src="images/school.jpg" alt="Our school building">
      <h2>About Our School</h2>
      <p>Our school has stood in Riverside for 120 years.</p>

      <h2>Clubs</h2>
      <ul>
        <li>floorball</li>
        <li>ceramics</li>
        <li>coding</li>
      </ul>
    </main>

    <footer>
      <p>Made by the 4th grade class, 2026</p>
    </footer>
  </body>
</html>
🙋 Persoonlijke website – oplossing (index.html)
<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8">
    <title>Jake Miller</title>
  </head>
  <body>
    <header>
      <h1>Jake Miller</h1>
      <nav>
        <a href="index.html">Home</a>
        <a href="about-me.html">More About Me</a>
      </nav>
    </header>

    <main>
      <img src="images/me.jpg" alt="Me with a soccer ball">
      <h2>What I Like</h2>
      <p>Soccer, Minecraft, and building websites.</p>
    </main>

    <footer>
      <p>Made by Jake, 2026</p>
    </footer>
  </body>
</html>
🌍 Reisdagboek – oplossing (index.html)
<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8">
    <title>Where We've Been</title>
  </head>
  <body>
    <header>
      <h1>Where We've Been 🌍</h1>
      <nav>
        <a href="index.html">Home</a>
        <a href="trips.html">All Trips</a>
      </nav>
    </header>

    <main>
      <h2>Last Trip: The Mountains</h2>
      <img src="images/mountains.jpg" alt="View from the summit">
      <p>Three days of walking, one wrong turn, and a hundred wild berries.</p>
    </main>

    <footer>
      <p>Journal kept by the Miller family, 2026</p>
    </footer>
  </body>
</html>
⚽ Clubwebsite – oplossing (index.html)
<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8">
    <title>Riverside Eagles FC</title>
  </head>
  <body>
    <header>
      <h1>Riverside Eagles FC</h1>
      <nav>
        <a href="index.html">Home</a>
        <a href="roster.html">Roster</a>
      </nav>
    </header>

    <main>
      <img src="images/team.jpg" alt="Team photo">
      <h2>Recent Results</h2>
      <ol>
        <li>Eagles – Hawks 3 : 1</li>
        <li>Falcons – Eagles 2 : 2</li>
      </ol>
    </main>

    <footer>
      <p>Riverside Eagles FC · training Tue & Thu at 5:00 PM</p>
    </footer>
  </body>
</html>

Controleer jezelf: Beide pagina’s hebben bovenaan dezelfde naam en hetzelfde menu, onderaan een footer, en het menu schakelt je tussen pagina’s. Structuur klaar – nu kunnen we duiken in hoe het eruitziet!

Wat neem je mee uit deze les