Les 3: Lijsten en tabellen
Home β€ΊHTML-track β€ΊLes 3

πŸ“‹ Lijsten en tabellen

⏱ Geschatte leestijd: 25 minuten · 7 stappen

In de vorige les maakte je pagina's met tekst, links en afbeeldingen. Nu ga je informatie structureren: met lijsten groepeer je punten, met tabellen presenteer je data in rijen en kolommen. Beide zijn overal op het web te vinden.

1 Ongeordende lijst: <ul>

Wat betekent dit?

<ul> staat voor unordered list β€” een lijst zonder volgorde. De browser toont een bolletje (β€’) voor elk item. Elk item staat in een <li>-tag (list item).

Ongeordende lijst
<ul>
  <li>HTML</li>
  <li>CSS</li>
  <li>JavaScript</li>
</ul>

Resultaat:

  • HTML
  • CSS
  • JavaScript

2 Geordende lijst: <ol>

Wat betekent dit?

<ol> staat voor ordered list β€” een lijst met volgorde. De browser nummert de items automatisch: 1, 2, 3... Gebruik <ol> als de volgorde ertoe doet (stappen, rankings). Gebruik <ul> als de volgorde niet uitmaakt.

HTML
<ol>
  <li>Open VS Code</li>
  <li>Maak een nieuw bestand</li>
  <li>Sla op als index.html</li>
</ol>

Browser

  1. Open VS Code
  2. Maak een nieuw bestand
  3. Sla op als index.html

πŸ’‘ Tip: Zowel <ul> als <ol> mogen alleen <li>-items direct bevatten. Tekst zonder <li> is ongeldig HTML.

3 Geneste lijsten

Je kunt een lijst binnen een <li> plaatsen. De binnenste lijst rΓΌckt automatisch in. Dit heet nesten.

Geneste lijst
<ul>
  <li>Front-end
    <ul>
      <li>HTML</li>
      <li>CSS</li>
      <li>JavaScript</li>
    </ul>
  </li>
  <li>Back-end
    <ul>
      <li>PHP</li>
      <li>Python</li>
    </ul>
  </li>
</ul>

Resultaat:

  • Front-end
    • HTML
    • CSS
    • JavaScript
  • Back-end
    • PHP
    • Python

4 Tabellen: <table>

Wat betekent dit?

Een tabel bestaat uit rijen en kolommen. Je hebt drie tags nodig:
<table> β€” de container voor de hele tabel.
<tr> β€” table row, één rij.
<td> β€” table data, één cel met gewone inhoud.
<th> β€” table header, één cel die als koptekst dient (vetgedrukt en gecentreerd).

Eenvoudige tabel
<table>
  <tr>
    <th>Naam</th>
    <th>Vak</th>
    <th>Cijfer</th>
  </tr>
  <tr>
    <td>Sara</td>
    <td>HTML</td>
    <td>8.5</td>
  </tr>
  <tr>
    <td>Daan</td>
    <td>HTML</td>
    <td>7.0</td>
  </tr>
</table>

Resultaat:

NaamVakCijfer
SaraHTML8.5
DaanHTML7.0

Zonder CSS heeft de tabel geen zichtbare randen. Dat voeg je later toe met CSS.

5 Oefening 1: Maak een lijstenpagina

Opdracht:

Voeg aan de pagina toe: een geordende lijst met minstens 3 stappen voor "Hoe maak ik een website?" en een ongeordende lijst met minstens 3 programmeertalen.

βœ“ Minimaal één <ol> met minstens 3 <li>-items

βœ“ Minimaal één <ul> met minstens 3 <li>-items

editor
Live preview

6 Oefening 2: Maak een rooster-tabel

Opdracht:

Maak een rooster-tabel met kolommen Dag, Vak en Lokaal. Vul minimaal 3 rijen in met je eigen (verzonnen) rooster.

βœ“ <table> aanwezig

βœ“ Minstens één rij met <th>-koppen

βœ“ Minstens 3 rijen met <td>-data

editor
Live preview

7 Eindopdracht: Cursuspagina

Combineer alles:

Maak een pagina over een cursus of hobby die je interessant vindt. De pagina moet bevatten:

βœ“ Een <h1> als paginatitel

βœ“ Een <ul> met minstens 3 onderdelen

βœ“ Een <ol> met minstens 3 stappen

βœ“ Een <table> met <th>-koppen en minstens 2 datarijen

βœ“ Minstens één geneste lijst

editor
Live preview
πŸ“„ Volledig voorbeeld: rooster.html
<!DOCTYPE html>
<html lang="nl">
<head>
  <meta charset="UTF-8">
  <title>Mijn schoolrooster</title>
</head>
<body>
  <h1>Mijn schoolrooster</h1>

  <h2>Vakken dit jaar</h2>
  <ul>
    <li>Webontwikkeling
      <ul>
        <li>HTML</li>
        <li>CSS</li>
        <li>JavaScript</li>
      </ul>
    </li>
    <li>Programmeren</li>
    <li>Databases</li>
  </ul>

  <h2>Hoe zet ik een website live?</h2>
  <ol>
    <li>Schrijf HTML, CSS en JS</li>
    <li>Upload bestanden naar een server</li>
    <li>Koppel een domeinnaam</li>
    <li>Test in meerdere browsers</li>
  </ol>

  <h2>Weekrooster</h2>
  <table border="1">
    <tr>
      <th>Dag</th>
      <th>Vak</th>
      <th>Lokaal</th>
    </tr>
    <tr>
      <td>Maandag</td>
      <td>HTML</td>
      <td>A12</td>
    </tr>
    <tr>
      <td>Woensdag</td>
      <td>Databases</td>
      <td>B04</td>
    </tr>
  </table>
</body>
</html>