Ebenso, wie Sie eine Tabelle horizontal in Tabellenkopf, Tabellenkörperbereiche und Tabellenfuß aufteilen können, können Sie auch Gruppen von Spalten und einzelne Spalten vordefinieren. Der Zweck ist auch in diesem Fall zunächst eine logische Strukturierung, auf die Sie dann mittels CSS Zugriff haben, um beispielsweise einzelne Spaltengruppen oder Spalten zu formatieren.

Beispiel 1

<table>
  <colgroup>
    <col>
    <col>
    <col>
  </colgroup>
  <tr>
    <td>1. Zeile, 1. Spalte</td>
    <td>1. Zeile, 2. Spalte</td>
    <td>1. Zeile, 3. Spalte</td>
  </tr>
  <!-- usw. andere Zeilen der Tabelle -->
</table>

Beispiel 2

<table>
  <colgroup span="3"></colgroup>
  <tr>
    <td>1. Zeile, 1. Spalte</td>
    <td>1. Zeile, 2. Spalte</td>
    <td>1. Zeile, 3. Spalte</td>
  </tr>
  <!-- usw. andere Zeilen der Tabelle -->
</table>

Beispiel 3

<table>
  <colgroup>
     <col>
  </colgroup>
  <colgroup span="2"></colgroup>
  <tr>
    <td>1. Zeile, 1. Spalte</td>
    <td>1. Zeile, 2. Spalte</td>
    <td>1. Zeile, 3. Spalte</td>
  </tr>
  <!-- usw. andere Zeilen der Tabelle -->
</table>

Erläuterung

Mit den Elementen colgroup und col können Sie Spaltengruppen bzw. einzelne Spalten einer Tabelle für die spätere Gestaltung oder für den Zugriff mit Scripting vordefinieren. Diese Elemente müssen vor allen Elementen thead, tfoot, tbody oder tr notiert werden!

Mit <colgroup>…</colgroup> markieren Sie eine Spaltengruppe (colgroup = column group = Spaltengruppe). Dabei haben Sie zwei Möglichkeiten:

Im obigen Beispiel 3 sehen Sie eine gemischte Anwendungsform. Die Tabelle hat drei Spalten. Dabei wird die erste Spalte separat vordefiniert, während die Spalten zwei und drei in einer gemeinsamen Spaltengruppe vereint werden. Eine solche Anordnung ist beispielsweise sinnvoll, wenn Sie für die erste Spalte besondere CSS-Formatierungen anwenden wollen, beispielsweise eine andere Hintergrundfarbe oder eine andere Textausrichtung.

Weitere Hinweise

Anders als in HTML4.01 dient das Vordefinieren von Spalten in HTML5 nicht mehr vorrangig Performance-Zwecken beim Rendern von Tabellen. Deshalb ist auch das width-Attribut entfallen, mit dem früher die Spaltenbreiten vordefiniert wurden. Selbstverständlich gehört die Breitenangabe nach wie vor zu den wichtigsten Eigenschaften vordefinierter Spalten. Doch ab HTML5 sollten Sie dafür nur noch die CSS-Eigenschaft width verwenden. Mit CSS bzw. CSS-Eigenschaften sind auch andere geeignete Formatierungen anwendbar, etwa Hintergrundfarben, verstärkte Rahmen, Abstände, Ausrichtungen und andere Eigenschaften. Indem Sie entsprechende CSS-Eigenschaften auf die Elemente wie col und colgroup anwenden, betreffen die Angaben alle Tabellenzellen, die zur entsprechenden Spalte bzw. Spaltengruppe gehören.

Wenn Sie XHTML-Standard-konform für einen XML-Parser arbeiten, müssen Sie daher das col-Element als inhaltsleer kennzeichnen. Dazu notieren Sie das alleinstehende Tag in der Form <col />.

Referenzinformationen

 


Korrekturen, Hinweise und Ergänzungen
Bitte scheut euch nicht und meldet, was auf dieser Seite sachlich falsch oder irreführend ist, was ergänzt werden sollte, was fehlt usw. Dazu bitte oben aus dem Menü Seite den Eintrag Diskutieren wählen. Es ist keine Anmeldung erforderlich, um Anmerkungen zu posten. Unpassende Postings, Spam usw. werden allerdings kommentarlos entfernt.