在CSS中,选择器div > a
和div a
是否相同?
<div>
<a>Hi</a>
</div>
答案 0 :(得分:10)
不是。 “div > a
”是child selector;它表示“a
元素是div
的直接孩子”。 “div a
”是descendant selector;它的意思是“a
元素,它是div
”的后代(一个孩子,或一个孩子的孩子,或一个孩子的孩子,。 ..)。当然,所有儿童元素都是后代;但并非所有的后代都是孩子。
例如:
<div>
<a href='http://www.google.com'>Google</a>
</div>
匹配div > a
和div a
(a
是div
的子元素,当然所有子元素也是后代元素。
可是:
<div>
<span>
<a href='http://www.google.com'>Google</a>
</span>
</div>
...与div > a
不符,但匹配div a
,因为a
是后代,但不是直接的孩子(有一个{中间的{1}}。
答案 1 :(得分:3)
不是。
<div><h1><a>some text</a></h1></div>
在上面的HTML中,div > a
不会选择<a>
,因为它不是<div>
的直接子项。
答案 2 :(得分:2)
答案 3 :(得分:0)
a
元素 children div
元素,而第二个元素选择后代的所有a
元素div
元素,例如<div><p><a>...</a></p></div>
。