Ein Nachfahren-Element ist ein Element, das irgendwo unterhalb eines anderen liegt, gleich über wie viele Ebenen. Jedes Kindelement ist ein Nachfahre, aber längst nicht jeder Nachfahre ist ein Kind.
- Nachfahren-Element
Ein Element, das irgendwo unterhalb eines anderen liegt, gleich wie tief.
Beispiel: „Jedes Nachfahren-Element der Navigation erbt deren Schriftfarbe.“Auch: Descendant, der englische Begriff; die Auswahlregel dazu heißt Nachfahren-Kombinator.
Abgrenzung zum Kindelement: Das liegt unmittelbar darin, ein Nachfahre beliebig tief.
/* Nachfahren: jedes a unterhalb der Navigation, gleich wie tief */
nav a { text-decoration: none; }
/* Kinder: nur die a, die unmittelbar in der Navigation liegen */
nav > a { font-weight: 600; }Was ein Nachfahren-Element vom Kindelement unterscheidet
Allein die Entfernung. Beide liegen innerhalb desselben Elements, aber das Kind ist die erste Ebene darunter und der Nachfahre jede weitere.
In der Auswahl ist der Unterschied ein einziges Zeichen: ein Leerzeichen für alle Nachfahren, ein Größerzeichen für die Kinder. Verwechselt man beides, trifft die Regel entweder zu viel oder zu wenig.
Wie Nachfahren-Elemente ausgewählt werden
Über den Nachfahren-Kombinator, also das Leerzeichen zwischen zwei Angaben. Er ist die älteste und am häufigsten benutzte Verknüpfung in Stylesheets und deshalb auch die, die am häufigsten mehr trifft als gewollt.
Besonders deutlich wird das bei verschachtelten Listen. Eine Regel für die Einträge einer Navigation erfasst ohne Weiteres auch die Einträge jedes Untermenüs darin.
Worauf bei der Auswahl von Nachfahren-Elementen zu achten ist
Auf die Tiefe. Je weiter oben der Bezugspunkt liegt, desto mehr Elemente fallen darunter, und desto wahrscheinlicher trifft die Regel etwas, das erst später dazukommt.
Deshalb gilt als Faustregel: so nah am Ziel wie möglich. Eine Regel, die an einer Klasse hängt, überlebt Umbauten am Markup; eine, die sich über fünf Ebenen nach unten hangelt, selten.