Answers:
有没有一种方法可以将Class样式仅应用于一个级别的td标签?
是*:
.MyClass>tbody>tr>td { border: solid 1px red; }
但!“ >
”直接子选择器在IE6中不起作用。如果您需要支持该浏览器(a,您可能会这样做),您所能做的就是分别选择内部元素并取消设置样式:
.MyClass td { border: solid 1px red; }
.MyClass td td { border: none; }
*请注意,第一个示例引用了tbody
在HTML中找不到的元素。它应该已经存在于您的HTML中,但是浏览器通常可以省略它……他们只是将其添加到幕后。
如何使用CSS:first-child伪类:
.MyClass td:first-child { border: solid 1px red; }
td
子树中所有子.MyClass
元素为其子元素的第一个子元素,因此还将设置inner的样式td
。
:first-child
绝对不会达到OP正在寻找的效果。
这种风格:
table tr td { border: 1px solid red; }
td table tr td { border: none; }
给我:
这个http://img12.imageshack.us/img12/4477/borders.png
但是,在这里使用类可能是正确的方法。
我认为,它将起作用。
.Myclass tr td:first-child{ }
or
.Myclass td:first-child { }
td
每行的第一行,第二个仅选择td
页面的第一行吗?
td:first-child
选择任何td
元素作为其父元素下的第一个元素(无论其父元素是什么)。第一个tr td:first-child
添加了以下条件:td
必须将嵌套在a之下tr
(在任何级别,不一定是直接后代)。 tr > td:first-child
选择一个作为td
,直接位于下方的第一个元素tr
。因此,最终:first-child
与OP的问题的解决方案无关,并且此答案是错误的。
我想你可以尝试
table tr td { color: red; }
table tr td table tr td { color: black; }
要么
body table tr td { color: red; }
其中“ body”是表父级的选择器
但是上课很可能是正确的选择。