Ich kann keine Möglichkeit finden, das n-te Element, das letzte Element oder das erste Element auszuwählen, wenn ich das Elternelement nicht kenne. nth-child
existiert, aber nur für Kinder, zum Beispiel:
p:last-child
wählt den Absatz "Zwei" und p:first-child
den Absatz "Eins" aus. Aber was ist, wenn ich dynamische Code habe und keine Ahnung habe, was der Elternname ist, oder sogar was der Elternteil wirklich ist (kann ein div, span, anchor, ul usw.) Sein?
Zum Beispiel:
%Vor% Wie wähle ich hier den zweiten Absatz? (Ich kann youdontknowwhat!
nicht auswählen, da ich wirklich nicht weiß, welches Element es ist (es ist nur ein hypothetischer Name).
Warum gibt es first-child
, last-child
und nth-child
selectors und NO :first
, :last
, :nth
(wie .select-me:first
)?
Wie würde sich
:first
von:first-child
unterscheiden? Jedes HTML-Element ist ein Kind eines anderen Elements im DOM außer<html>
, das das Stammelement ist. - BoltClockEs wäre, weil Sie das Elternelement nicht kennen. - fomicz
Sie müssen nicht wissen, dass das Elternelement für :first-child
oder :nth-child()
funktioniert. Sie funktionieren einfach , auch wenn Sie das übergeordnete Element nicht angeben.
Der folgende Selektor stimmt garantiert mit jedem passenden .select-me
-Element überein, unabhängig davon, was sein übergeordnetes Element ist:
natürlich ist es besser, wenn Sie den Parent-Selektor (für eine Frage der Leistung) angeben können
Tags und Links css css3 css-selectors