Linuchs: CSS für Tabellen-Spalten

Moin,

ich arbeite viel mit umfangreichen Tabellen. Und immer wieder kommt es vor, dass Spalten hinzugefügt oder entfernt werden.

Das heisst, Spalte 11 wird zu Spalte 13 und sowas stimmt nicht mehr:

table#choere tr>td:nth-of-type(11) {
  text-align: right;
}

Kann man den Spalten eine ID oder Kennung geben, die automatisch mitwandert?

Linuchs

  1. Tach,

    Kann man den Spalten eine ID oder Kennung geben, die automatisch mitwandert?

    ja mit dem col-Element, allerdings greifen darauf nur wenige CSS-Eigenschaften: https://www.w3.org/TR/CSS21/tables.html#columns; soweit ich weiß, wird dir nicht viel mehr übrig bleibe, als Klassen zu verwenden.

    mfg
    Woodfighter

    1. Moin,

      ... soweit ich weiß, wird dir nicht viel mehr übrig bleibe, als Klassen zu verwenden.

      Du meinst, in jeder Zeile (statt Spalte) müssen die Tabellenfelder eine Klasse bekommen und damit unsinnigen Traffic erzeugen?

      <tr>
        <td class=name>Jupp</td>
        <td class=ort>Hamburg</td>
      </tr>
      

      Linuchs

      1. Tach,

        Du meinst, in jeder Zeile (statt Spalte) müssen die Tabellenfelder eine Klasse bekommen und damit unsinnigen Traffic erzeugen?

        um den Traffic würde ich mir relativ wenige Gedanken machen, der komprimiert sich im wesentlichen eh weg und wie viele Klassen nötig sind, hängt davon ab, was du genau tust, schließlich könnte man sich ja vielleicht an eine Zelle mit Klasse „ankern“ und von da weiterzählen.

        mfg
        Woodfighter

  2. Hallo,

    wenn die Tabellenzellen irgendwelche Attribute besäßen, könntest du den Attributselektor verwenden. Ansonsten fällt mir nur ein, für die zweite Hälfte der Tabelle nth-last-of-type() zu verwenden, das reduziert das Verschieben der Indizes.

    Gruß
    Kalk