pim*_*vdb 39 html css css-selectors
我无法理解为什么以下选择器按预期工作(即获取td
):
table tr td
Run Code Online (Sandbox Code Playgroud)
但这个没有:
table > tr > td
Run Code Online (Sandbox Code Playgroud)
它td
是后代tr
,后者又是后代table
,但他们也是彼此的孩子.因此,我认为>
选择器也可以工作.
我做了两个小提琴:
为什么>
选择器不在这里工作?
Bol*_*ock 83
在HTML中,浏览器隐式添加一个tbody
元素,在其中包含tr
元素1,所以实际上,tr
它永远不是一个孩子table
.
因此,您必须这样做:
table > tbody > tr > td
Run Code Online (Sandbox Code Playgroud)
当然,如果您tbody
自己添加元素,则使用相同的选择器.该规范解释了何时tbody
隐式添加a :
标签遗漏
如果
tbody
元素中的第一个tbody
元素是tr
元素,并且元素不是紧跟在其前面的元素tbody thead
,或者tfoot
省略了结束标记的元素,则可以省略元素的开始标记.
1 然而,对于XHTML文档而言,情况并非如此application/xhtml+xml
,因为它的XML根源是正确的.
归档时间: |
|
查看次数: |
19809 次 |
最近记录: |