Wie würde ich alle außer dem letzten Kind mit CSS3-Selektoren auswählen?
Um beispielsweise nur das letzte Kind zu erhalten, wäre div:nth-last-child(1)
.
Sie können die Pseudoklasse negation :not()
gegen die :last-child
Pseudoklasse verwenden. Da CSS Selectors Level 3 eingeführt wurde, funktioniert es nicht in IE8 oder darunter:
:not(:last-child) { /* styles */ }
Sie können Ihren Stil auf alle div anwenden und den letzten mit: last-child :
zum Beispiel inCSS:
.yourclass{
border: 1px solid blue;
}
.yourclass:last-child{
border: 0;
}
oder inSCSS:
.yourclass{
border: 1px solid rgba(255, 255, 255, 1);
&:last-child{
border: 0;
}
}
Nick Cravers Lösung funktioniert, aber Sie können auch Folgendes verwenden:
:nth-last-child(n+2) { /* Your code here */ }
Chris Coyier von CSS Tricks hat dafür einen Nice : nth Tester gemacht.
Wenn IE9 kommt, wird es einfacher. In den meisten Fällen können Sie das Problem jedoch auf ein Problem umstellen: first-child und die gegenüberliegende Seite des Elements (IE7 +).
Die Verwendung der Nick Cravers-Lösung mit selectivizr ermöglicht eine Browser-Lösung (IE6 +)
um Elemente aus dem letzten Bereich zu finden, verwenden Sie
<style>
ul li:nth-last-of-type(3n){ color:#a94442} /**/
</style>