Spalten formatieren

Ich verwende HTML-Tabellen in neueren Seiten nur noch als Tabellen. Bei einigen alten Seiten habe ich aber noch Layout-Tabellen. Eventuell komme ich mal dazu, diese durch ein barrierefreies und logisch strukturiertes Design zu ersetzen.

Tabellen sind weitaus mächtiger, als ich bisher angenommen hatte. Alleine schon eine Unterteilung und <thead>, <tfoot> und <tbody> bietet bei Formatierung via CSS einige Vorteile. Aber auch die <colgroup> und <col />s sind praktisch. Damit kann ich einer ganzen Spalte sagen, dass der Text rechtsbündig sein soll ;-) Genial.

<table>
  <colgroup>
    <col />
    <col class="center" />
    <col class="right" />
  </colgroup>
  <thead>
    <tr>
      <th>Titel</th>
      <th>Status</th>
      <th>Aufrufe</th>
    </tr>
  </thead>
  <tfoot>
    <tr>
      <td>Gesamt:</td>
      <td>online</td>
      <td>7</td>
    </tr>
  </tfoot>
  <tbody>
    <tr>
      <td>Startseite</td>
      <td>online</td>
      <td>3</td>
    </tr>
    <tr>
      <td>Impressum</td>
      <td>online</td>
      <td>2</td>
    </tr>
    <tr>
      <td>Gästebuch</td>
      <td>offline</td>
      <td>2</td>
    </tr>
  </tbody>
</table>

Aber leider nicht hierarchisch. Und deswegen hat auch Firefox damit Probleme :-( Auch ein <col align=“center“ /> ist nicht erfolgreich. Die hierarchische Struktur für ein td ist im Firefox body > table > tbody > td. Kein col drin. Aber dafür kann Firefox CSS besser.

#meinetabelle td + td {
  text-align: center;
}
#meinetabelle td + td + td {
  text-align: right;
}

 

Der Firefox kann + interpretieren. Das + steht für „nachfolgende“ Elemente. Somit wird mit tr td + td nur das einem td folgendem Element angesprochen. Diese Formatierung wirkt sich im Firefox auf die Fettgedruckten Zellen aus:

<table>
  <tr>
    <td>bla bla</td>
    <td>bla bla</td>
    <td>bla bla</td>
  </tr>
</table>

Es wird auch das dritte, vierte, … Element formatiert. Schließlich haben diese auch immer ein Element davor. Dies kann man mit tr td + td + td wieder zurückformatieren.

Der Internet Explorer kann das + nicht interpretieren. Dieser sieht bei #meinetabelle td + td + td nur #meinetabelle td td td. Als wirkt sich diese Formatierung bei einer mehrfach verschachtelten Tabelle aus… Aber ich denke, dass wir aus dem Alter raus sind, Tabellen so stark zu verschachteln ;-)

Diesen Workaround habe ich im Support-Forum von HTML-Editor phase 5 gefunden.