Was bringt es, diese Syntax zu verwenden?
div.card > div.name
Was ist der Unterschied zwischen diesen
div.card div.name
Was bringt es, diese Syntax zu verwenden?
div.card > div.name
Was ist der Unterschied zwischen diesen
div.card div.name
Antworten:
A > B wählt nur B aus, die A direkt untergeordnet sind (dh es gibt keine anderen Elemente dazwischen).
A B wählt jedes B aus, das sich in A befindet, auch wenn sich andere Elemente zwischen ihnen befinden.
>ist der untergeordnete Selektor. Es werden nur unmittelbare untergeordnete Elemente und keine Nachkommen (einschließlich Enkelkinder, Enkelkinder usw.) wie im zweiten Beispiel ohne das angegeben >.
Die untergeordnete Auswahl wird von IE 6 und niedriger nicht unterstützt. Eine großartige Kompatibilitätstabelle finden Sie hier .
div.card > div.namepasst, <div class='card'>....<div class='name'>xxx</div>...</div>
aber es passt nicht<div class='card'>....<div class='foo'> ... <div class='name'>xxx</div>..</div>....</div>
div.card div.name passt zu beiden.
Das heißt, der >Selektor stellt sicher, dass das ausgewählte Element auf der rechten Seite des >Elements ein unmittelbares untergeordnetes Element des Elements auf der linken Seite ist.
Die Syntax ohne die >entspricht einer <div class='name'>, die ein Nachkomme (nicht nur ein Kind) von ist <div class='card'>.
A> B wählt B aus, wenn es sich um direkte Kinder von A handelt, während AB B auswählt, ob es sich um direkte Kinder von B handelt oder nicht.
<p> USING SPACE </p>
<style>
.a .b {
background-color: red;
}
</style>
<span class="a">
a
<br>
<span class="b"> a b</span>
<br>
<span class="c">
<span class="b"> a b c</span>
</span>
</span>
<br><br>
<p> USING GREATER THAN SIGN</p>
<style>
.x > .y {
background-color: red;
}
</style>
<span class="x">
x
<br>
<span class="y"> x y</span>
<br>
<span class="z">
<span class="y"> x y z</span>
</span>
</span>
Betrachten Sie die beiden Szenarien div > span { }vs.div span { }
Hier <space>wählt das alle <span>Elemente des <div>Elements aus, auch wenn sie sich in einem anderen Element befinden. Das> wählt alle untergeordneten <div>Elemente des Elements aus, aber wenn sie sich in einem anderen Element befinden.
div > span {
color: #FFBA00 ;
}
<body>
<div>
<p>
<span>Hello,</span>
</p>
<span>World!</span>
</div>
</body>
Dieser wählt nur die aus <span>World!</span>und sucht nicht nach der<span> Inside- <p>Tag.
div span {
color: #FFBA00 ;
}
<body>
<div>
<p>
<span>Hello,</span>
</p>
<span>World!</span>
</div>
<body>
Dieser wählt alle Span-Tags aus, auch wenn sie in einem anderen Tag verschachtelt sind.