この構文を使用する意味は何ですか
div.card > div.name
これの違いは何ですか
div.card div.name
この構文を使用する意味は何ですか
div.card > div.name
これの違いは何ですか
div.card div.name
回答:
A > B
Aの直接の子であるBのみを選択します(つまり、間に他の要素はありません)。
A B
それらの間に他の要素があったとしても、Aの中にあるBを選択します。
div.card > div.name
一致する<div class='card'>....<div class='name'>xxx</div>...</div>
が一致しない<div class='card'>....<div class='foo'> ... <div class='name'>xxx</div>..</div>....</div>
div.card div.name
両方に一致します。
つまり、>
セレクターは、右側の選択された要素が>
左側の要素の即時の子であることを確認します。
>
一致しない構文<div class='name'>
は、の子孫(子だけではない)と一致します<div class='card'>
。
A> Bは、Aの直接の子である場合はBを選択し、ABはBの直接の子であるかどうかにかかわらずBを選択します。
<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>
2つのシナリオdiv > span { }
とdiv span { }
ここでは<space>
、<span>
要素のすべての要素が<div>
別の要素の内部にある場合でも、それらがすべてを選択します。>は<div>
要素のすべての子を選択しますが、それらが別の要素内にある場合。
div > span {
color: #FFBA00 ;
}
<body>
<div>
<p>
<span>Hello,</span>
</p>
<span>World!</span>
</div>
</body>
これはを選択するだけ<span>World!</span>
で、<span>
内部は検索されません<p>
タグを。
div span {
color: #FFBA00 ;
}
<body>
<div>
<p>
<span>Hello,</span>
</p>
<span>World!</span>
</div>
<body>
これは、別のタグ内にネストされている場合でも、すべてのspanタグを選択します。