Zum Beispiel:
div > p.some_class {
/* Some declarations */
}
Was genau bedeutet das >
Zeichen?
quelle
Zum Beispiel:
div > p.some_class {
/* Some declarations */
}
Was genau bedeutet das >
Zeichen?
>
ist der Kinderkombinator , der manchmal fälschlicherweise als direkter Nachkommenkombinator bezeichnet wird. 1
Das bedeutet, dass der Selektor div > p.some_class
nur Absätze auswählt .some_class
, die direkt in a verschachtelt sinddiv
, und keine Absätze, die weiter darin verschachtelt sind.
Eine Illustration:
<div>
<p class="some_class">Some text here</p> <!-- Selected [1] -->
<blockquote>
<p class="some_class">More text here</p> <!-- Not selected [2] -->
</blockquote>
</div>
Was ist ausgewählt und was nicht:
Ausgewählt
Dies p.some_class
befindet sich direkt innerhalb von div
, daher wird eine Eltern-Kind-Beziehung zwischen beiden Elementen hergestellt.
Nicht gewählt
Dies p.some_class
wird durch ein enthaltenes blockquote
in dem div
, anstatt das div
selbst. Obwohl dies p.some_class
ein Nachkomme von ist div
, ist es kein Kind; Es ist ein Enkelkind.
Folglich div > p.some_class
wird dieses Element zwar nicht übereinstimmen, es div p.some_class
wird jedoch stattdessen der Nachkommen-Kombinator verwendet.
1 Viele Leute gehen weiter, um es "direktes Kind" oder "unmittelbares Kind" zu nennen, aber das ist völlig unnötig (und für mich unglaublich ärgerlich), weil ein untergeordnetes Element per Definition sowieso unmittelbar ist und sie genau dasselbe bedeuten. Es gibt kein "indirektes Kind".
#something a
wäre ein Kinderwähler.#something a
könnte bedeuten, dassa
es sich um ein Enkelkind oder ein Urenkelkind handelt#something
(die Schachteltiefe wird nicht berücksichtigt).>
(Größer als Vorzeichen) ist ein CSS-Kombinator.Ein CSS-Selektor kann mehr als einen einfachen Selektor enthalten. Zwischen den einfachen Selektoren können wir einen Kombinator einfügen.
In CSS3 gibt es vier verschiedene Kombinatoren:
Hinweis:
<
ist in CSS-Selektoren nicht gültig.Zum Beispiel:
Ausgabe:
Weitere Informationen zu CSS-Kombinatoren
quelle
.entry-content > * {"code" }
das folgt.entry-content {"other code" }
? Deckt nicht.entry-content > *
alle Kinder von abentry-content
?Wie andere erwähnen, ist es ein Kinderselektor. Hier ist der entsprechende Link.
http://www.w3.org/TR/CSS2/selector.html#child-selectors
quelle
Es werden
p
Elemente mit Klassen abgeglichensome_class
, die sich direkt unter a befindendiv
.quelle
Alle
p
Tags mit Klasse,some_class
die direkte untergeordnetediv
Elemente eines Tags sind.quelle
Alle direkten Kinder,
<p>
mit denen sie zusammen sind,.some_class
würden den Stil auf sie anwenden.quelle
Weitere Informationen zu CSS Ce [Lektoren und deren Verwendung finden Sie in meinem Blog, in CSS- Selektoren und in CSS3-Selektoren
quelle
Der Selektor mit dem größeren Vorzeichen (>) in CSS bedeutet, dass der Selektor rechts ein direkter Nachkomme / Kind von allem ist, was links ist.
Ein Beispiel:
Bedeutet nur, einen Absatz zu formatieren, der nach einem Artikel steht.
quelle