HTML-Primer: Was in HTML-Büchern fehlt

Tabellen in HTML

Es kommt immer mal vor, dass man verschiedene Dinge mit ihren Eigenschaften als Tabelle listen will: Produkte mit ihren Bestellnummern und Preisen sind ein gutes Beispiel.

Die HTML-Elemente, die wir hierzu brauchen sind:

Erstellen wir also eine einfache Tabelle:

<table> <tr> <th>Name</th> <th>Geburtsdatum</th> <th>Geburtsort</th> </tr> <tr> <td>Arthur</td> <td>16.01.1997</td> <td>Trier</td> </tr> <tr> <td>Ludmilla</td> <td>27.08.1957</td> <td>Trier</td> </tr> <tr> <td>Herwig</td> <td>21.09.1955</td> <td>Salzburg</td> </tr> </table>

Die Schritte sind:

  1. Tabelle (Table) öffnen mit dem Table-Start-Tag: <table>
  2. Erste Zeile (Table-Row) der Tabelle starten: <tr>
  3. Die einzeln Zellen mit Spaltenüberschriften als Tabellenkopf-Elemente (Table-Header) anlegen: <th> ... </th>
  4. Erste Zeile beenden mit dem TR-End-Tag: </tr>
  5. Zweite Zeile öffnen: <tr>
  6. Die einzelnen Zellen mit Tabellendaten (Table-Data) anlegen: <td> ... </td>
  7. Weitere Zeilen mit Tabellendaten anlegen
  8. Nach der letzten Zeile die Tabelle mit dem Table-End-Tag schließen: </table>

Wenn wir das nun in den Rumpf (Body) einer HTML-Datei einfügen, sollte das etwa so aussehen:

Name Geburtsdatum Geburtsort
Alexander 16.01.1997 Trier
Lydia 27.08.1957 Trier
Herbert 21.09.1955 Salzburg

Tabellen-Attribute

Wie schon erwähnt, wird das genaue Design eigentlich außerhalb der HTML-Datei festgelegt, nämlich in sogenannten Style Sheets, auch CSS genannt. Die meisten CSS-Anweisungen kann man auch als HTML-Attribute vergeben und dabei schon mal die Begriffe verstehen lernen. Das heißt aber nicht, dass man das heute noch so macht. Im Gegenteil: Genaugenommen gehört nichts, was zum Design gehört (Layout, Abstände, Ränder, etc.) in die HTML-Datei. Trotzdem ist es erstens für das Verständnis gut und zweitens kann es hier und da schnell und nützlich sein.

Border

Border heißt, aus dem Englischen übersetzt, Rand. Wenn wir der Tabelle (im Table-Tag) ein Attribut Border mit einem Wert von z.B. 1 geben, erhalten alle Tabellen-Elemente (Zellen) einen Rand von 1 Pixel (also 1 Bildpunkt).

Wir ändern das Table-Tag also ab in:

<table border="1"> ...

Wenn wir nun nach dem Speichern die Seite neu laden, sollte die Tabelle etwa so aussehen:

Name Geburtsdatum Geburtsort
Alexander 16.01.1997 Trier
Lydia 27.08.1957 Trier
Herbert 21.09.1955 Salzburg
Padding (cellpadding)

Das englische Wort Pad heißt eigentlich soviel wie Polster oder Kissen. Damit der Inhalt von Tabellen-Zellen (TH- oder TD-Elementen) nicht zu nah an den Rand der Zelle kommt, fügt man ein Polster - einen Abstand - zwischen Inhalt und Zellen-Rand. Um das Padding-Element für Tabellen direkt in HTML einzugeben lautet der Attributname cellpadding. Wenn wir z.B. einen Freiraum von 10 Pixeln um unseren Tabellentext haben wollen, fügen wir das in unseren Table-Tag ein:

<table border="1" cellpadding="10"> ...

Übungsaufgabe: Experimentiere mit verschiedenen Werten für das Border- und das Cellpadding-Attribut. Wähle dabei für beide Attribute auch den Wert 0 und sehr große Werte, z.B. 100.

Cellspacing

Die meisten Browser stellen HTML-Tabellen mit einem 3D-Effekt dar, der eigentlich gar nicht schön ist. Ohne die genaue Bedeutung hier zu erklären: Wenn man das Attribut Cellspacing verwendet und ihm den Wert 0 gibt, sieht die Tabelle besser aus.

Jetzt sieht unser Table-Start-Tag also wie folgt aus:

<table border="1" cellpadding="5" cellspacing="0">

So erhalten wir etwa folgende Tabelle:

Name Geburtsdatum Geburtsort
Alexander 16.01.1997 Trier
Lydia 27.08.1957 Trier
Herbert 21.09.1955 Salzburg

Nicht vergessen: Nach dem Speichern der Test-Seite muss die Seite neu geladen werden. (Bei Firefox hält man dazu die Umschalt-Taste fest und drückt auf F5.)

Nun bekommt unser HTML-Dokument einen richtigen HTML-Seitenkopf.

© Hermann Faß, 2009