====== HTML: Tabellen (Table Markup) ====== HTML-Tabellen dienen dazu, zweidimensionale Daten strukturiert in Zeilen und Spalten darzustellen (z. B. Fahrpläne, Nährwerttabellen oder Statistiken)[cite: 7]. **Wichtig:** Tabellen dürfen in modernem Webdesign **ausschließlich für strukturierte Daten** verwendet werden, nicht für das allgemeine Seitenlayout[cite: 7]! ===== 1. Grundlegender Aufbau einer Tabelle ===== Tabellen bestehen grundsätzlich aus Zeilen, die wiederum einzelne Daten- oder Kopfzeilen-Zellen enthalten[cite: 7]. ==== Grundlegende Tags ==== * **:** Der übergeordnete Container für das tabellarische Material[cite: 7]. * ** (Table Row):** Spezifiziert eine einzelne Tabellenzeile[cite: 7]. Darf ausschließlich ''und ) ===== Um Stile (CSS) oder Skripte auf ganze Spalten anzuwenden, ohne jede einzelne Datenzelle formatieren zu müssen, nutzt man Spaltengruppen[cite: 7]. * Sie werden direkt am Anfang der Tabelle (nach ''für einzelne Spalten ====
''- oder ''''-Tags enthalten[cite: 7]. * ** (Table Header):** Definiert eine Kopfzelle (Überschrift einer Spalte oder Zeile)[cite: 7]. Der Text wird standardmäßig fett und zentriert dargestellt[cite: 7]. * ** (Table Data):** Definiert eine normale Datenzelle[cite: 7]. ==== Code-Beispiel ====
Menu item Calories Fat (g)
Chicken noodle soup 120 2
Caesar salad 400 26
**Hinweis zu Spalten:** Spalten werden in HTML **nicht** durch eigene Tags erstellt, sondern ergeben sich implizit aus der Anzahl der enthaltenen Zellen in den Zeilen[cite: 7]. ===== 2. Barrierefreiheit und Tabellenüberschrift ===== ==== Tabellentitel (
) ==== Das ''''-Tag liefert einen Titel oder eine prägnante Beschreibung für die gesamte Tabelle[cite: 7]. * Es muss direkt als **erstes Element** innerhalb des ''''-Containers stehen[cite: 7]. * Es wird von Browsern standardmäßig oberhalb der Tabelle gerendert[cite: 7]. ==== Bedeutung von :** Der Tabellenkopf (enthält eine oder mehrere '''' mit Kopfzeilen)[cite: 7]. * **:** Der eigentliche Tabellenkörper (enthält die Haupt-Datenzeilen)[cite: 7]. * **:** Der Tabellenfuß (z. B. für Summen zeilen, Anmerkungen oder Fußnoten)[cite: 7].
für Screenreader ==== Kopfzellen ('''') sind entscheidend für die Barrierefreiheit (Accessibility)[cite: 7]. Screenreader lesen bei der Navigation in Datenzellen oft den zugehörigen Header mit vor, um den visuellen Kontext für sehbehinderte Nutzer verständlich zu machen[cite: 7].
Nährwertinformationen
Gericht Kalorien
===== 3. Zellübergreifendes Dehnen (Spanning) ===== Mit den Attributen ''colspan'' und ''rowspan'' lassen sich Zellen über mehrere Spalten oder Zeilen erstrecken[cite: 7]. ==== Spalten zusammenfassen (colspan) ==== Dehnt eine Zelle nach rechts über mehrere Spalten aus[cite: 7]:
Fettgehalt
Gesättigte Fetts (g) Ungesättigte Fetts (g)
==== Zeilen zusammenfassen (rowspan) ==== Dehnt eine Zelle nach unten über mehrere Zeilen aus[cite: 7]:
Portionsgröße Klein (8oz.)
Mittel (16oz.)
Groß (24oz.)
Achten Sie beim Verwenden von ''colspan'' und ''rowspan'' darauf, dass die mathematische Gesamtzahl der Spalten und Zeilen in allen Reihen korrekt aufgeht, um Darstellungsfehler zu vermeiden[cite: 7]. ===== 4. Semantische Zeilengruppen ===== Für umfangreichere oder komplexe Tabellen empfiehlt sich die Unterteilung in logische Abschnitte[cite: 7]. Dies verbessert die Semantik und unterstützt spezielle Drucklayouts (z. B. Wiederholung von Header/Footer auf jeder gedruckten Seite)[cite: 7]. * **
Umsatzstatistik
Quartal Umsatz
Q1 10.000 €
Q2 15.000 €
Gesamt 25.000 €
===== 5. Spaltengruppen (
'', falls vorhanden) platziert[cite: 7]. * Sie enthalten selbst keinen sichtbaren Textinhalt[cite: 7]. ==== Nutzung des span-Attributs ====
Beispiel mit colgroup
==== Nutzung von