我正在查看一些css代码,我不明白这一行。代码有一个名为shape的div,它包含六个其他div,每个div包含一个图像。
以下代码选择哪些图片?正如我所说div形状包含六个其他div,那么为什么下面的代码只选择一个图像?
#shape > div{
}
答案 0 :(得分:5)
实际上A > B
是更通用的A B
:
A B
将适用于元素B
内某处的任何元素A
。A > B
仅适用于直接元素B
的子元素A
。简单示例:
<强> CSS 强>
.a .b {
color: red;
}
.a > .b {
color: blue;
}
<强> HTML 强>
<div class="a">
<div class="b">Hello</div>
<div class="c">
<div class="b">World!</div>
</div>
</div>
您可以尝试此示例right here at jsFiddle。
如您所见,蓝色不会应用于具有类b
的元素的第二个实例,因为它不是直接子项;只是一个后代。否则,由于后面的第二个定义(.a > .b
),两个元素都将为蓝色。
答案 1 :(得分:3)
这将选择任何ID为shape
答案 2 :(得分:2)
答案 3 :(得分:1)
>
是孩子combinator,也称为直系后代组合子
这意味着选择器#shape > div
仅选择直接位于标识为#shape