例如:
div > p.some_class {
/* Some declarations */
}
Run Code Online (Sandbox Code Playgroud)
这个>符号究竟意味着什么?
我无法理解为什么以下选择器按预期工作(即获取td):
table tr td
Run Code Online (Sandbox Code Playgroud)
但这个没有:
table > tr > td
Run Code Online (Sandbox Code Playgroud)
它td是后代tr,后者又是后代table,但他们也是彼此的孩子.因此,我认为>选择器也可以工作.
我做了两个小提琴:
为什么>选择器不在这里工作?
IE9和Chrome14都记录TBODY为tagName内部元素<table>
HTML5规范<table>清楚地说明:
后跟零个或多个tbody元素或一个或多个tr元素
此外.HTML5规范<tr>清楚地说明:
作为表元素的子元素,在任何标题,colgroup和thead元素之后,但仅当没有tbody元素是table元素的子元素时.
为什么浏览器会破坏我的DOM并注入<tbody>时间
"向后兼容性"的答案绝对没有意义,因为我特意选择了HTML5文档类型.
我尝试使用以下代码将颜色应用于表的行.它不起作用,但我不明白为什么.有人可以解释为什么或指出我正确的方向吗?
HTML:
<table id="tblSample" border="1" cellpadding="0" cellspacing="0" width="300px">
<tr>
<td>1</td>
<td>1</td>
</tr>
<tr>
<td>2</td>
<td>2</td>
</tr>
</table>
Run Code Online (Sandbox Code Playgroud)
JQuery的:
$("#tblSample > tr").css("background-color", "gray");
Run Code Online (Sandbox Code Playgroud)