Problem mit colspan=2
Murmelin
- css
Hallo,
ich habe eine Tabelle, deren Spalten mit CSS definiert werden:
tr>td:first-child {width:10em}
tr>td:first-child+td {width:1.5em; background:#fdd}
tr>td:first-child+td+td {width:1.5em; background:#dfd}
Es gibt Zeilen (Zwischenüberschriften), in denen zwei Spalten zusammengefasst werden:
<tr>
<td colspan=2>Überschrift</td>
<td>xxx</td>
</tr>
Die Spalte mit dem Inhalt xxx ist die dritte Spalte, erhält aber the stylesheet der zweiten. Also Hintergrund #fdd statt #dfd
Gibt es einen Trick, die Spalten "richtig" zu definieren?
Gruß, Murmelin
@@Murmelin:
nuqneH
Die Spalte mit dem Inhalt xxx ist die dritte Spalte, erhält aber the stylesheet der zweiten.
Klar, es ist ja das dem ersten 'td'-Kindelement folgende 'td'-Element.
Gibt es einen Trick, die Spalten "richtig" zu definieren?
Attributselektor: td[colspan]:first-child+td
Übrigens sind die ersten Zellen einer Tabellenzeile üblicherweise Kopfzellen, also 'th', nicht 'td'. Besonders, wenn es Zwischenüberschriften sind. Dann kannst du dir auch :first-child
sparen.
Qapla'
Gibt es einen Trick, die Spalten "richtig" zu definieren?
Attributselektor:
td[colspan]:first-child+td
Und wenn es unterschiedliche colspan-Werte gibt und nicht alle notwendigerweise 2 haben, kann der Attributselektor gerne auch Werte der Attribute vergleichen.
@@suit:
nuqneH
Und wenn es unterschiedliche colspan-Werte gibt und nicht alle notwendigerweise 2 haben, kann der Attributselektor gerne auch Werte der Attribute vergleichen.
Bei @colspan="3" sollte es bei heiliger Dreispaltigkeit kein nachfolgendes Geschwisterelement geben.
Aber ja, natürlich ist es sicherer, gegen 2 zu vergleichen; es könnte ja jemand @colspan="1" angeben. ;-)
Qapla'
Bei @colspan="3" sollte es bei heiliger Dreispaltigkeit kein nachfolgendes Geschwisterelement geben.
In diesem speziellen Fall ja :) ich wollte hiermit aber eher das Archiv füttern
Aber ja, natürlich ist es sicherer, gegen 2 zu vergleichen; es könnte ja jemand @colspan="1" angeben. ;-)
Selbstverständlich :D
@@suit:
nuqneH
ich wollte hiermit aber eher das Archiv füttern
Ab in den Keller!
Qapla'
Hi,
Und wenn es unterschiedliche colspan-Werte gibt und nicht alle notwendigerweise 2 haben, kann der Attributselektor gerne auch Werte der Attribute vergleichen.
Bei @colspan="3" sollte es bei heiliger Dreispaltigkeit kein nachfolgendes Geschwisterelement geben.
Aber ja, natürlich ist es sicherer, gegen 2 zu vergleichen; es könnte ja jemand @colspan="1" angeben. ;-)
oder noch eins weniger, colspan="0". Was ja durchaus sinnvoll sein kann, weil man's beim Hinzufügen neuer Spalten nicht ändern muß.
cu,
Andreas