Odpowiedzi:
Możesz użyć :first-child
i :last-child
pseudo-selektorów:
tr td:first-child,
tr td:last-child {
/* styles */
}
Powinno to działać we wszystkich głównych przeglądarkach, ale IE7 ma pewne problemy, gdy elementy są dodawane dynamicznie (i nie będzie działać w IE6).
tr > td
i tr td
?
>
wybiera tylko bezpośrednie dzieci. Bez niej wybrani zostaną wszyscy potomkowie (np. Dzieci dzieci). Aby wybrać drugie lub trzecie dziecko, spójrz na nth-child
pseudo-selektor.
+
. coś takiego, tr td + td + .... +td
ale co, jeśli nie wiem, ile mam td?
Możesz użyć następującego fragmentu kodu:
tr td:first-child {text-decoration: underline;}
tr td:last-child {color: red;}
Korzystanie z następujących pseudoklas:
: pierwsze dziecko oznacza „wybierz ten element, jeśli jest pierwszym dzieckiem swojego rodzica”.
: last-child oznacza "wybierz ten element, jeśli jest ostatnim dzieckiem swojego rodzica".
Dotyczy to tylko węzłów elementów (znaczników HTML), te pseudoklasy ignorują węzły tekstowe.
Możesz użyć : first-child i : last-child pseudo-selectors
:
tr td:first-child{
color:red;
}
tr td:last-child {
color:green
}
Lub możesz użyć innego sposobu, na przykład
// To first child
tr td:nth-child(1){
color:red;
}
// To last child
tr td:nth-last-child(1){
color:green;
}
Obie drogi działają doskonale
Jeśli wiersz zawiera pewne wiodące (lub końcowe) th
znaczniki zanim td
należy użyć :first-of-type
, a :last-of-type
selektorów. W przeciwnym razie pierwszy td
nie zostanie wybrany, jeśli nie jest pierwszym elementem wiersza.
To daje:
td:first-of-type, td:last-of-type {
/* styles */
}