将样式应用于td标签的第一级别

有没有一种方法可以将类的风格应用到td标签的一个级别?

<style>.MyClass td {border: solid 1px red;}</style> <table class="MyClass"> <tr> <td> THIS SHOULD HAVE RED BORDERS </td> <td> THIS SHOULD HAVE RED BORDERS <table><tr><td>THIS SHOULD NOT HAVE ANY</td></tr></table> </td> </tr> </table> 

有没有一种方法可以将类的风格应用到td标签的一个级别?

*

 .MyClass>tbody>tr>td { border: solid 1px red; } 

但! “ > ”直接子select器在IE6中不起作用。 如果您需要支持该浏览器(您可能会这样做),您只需单独select内部元素并取消设置样式:

 .MyClass td { border: solid 1px red; } .MyClass td td { border: none; } 

*请注意,第一个示例引用了在HTML中找不到的tbody元素。 它应该已经在你的HTML中,但浏览器通常可以放弃它们,只是在幕后添加它。

如何使用CSS:first-child伪类:

 .MyClass td:first-child { border: solid 1px red; } 

这种风格:

 table tr td { border: 1px solid red; } td table tr td { border: none; } 

给我:

这个http://img12.imageshack.us/img12/4477/borders.png

但是,使用一个类可能是正确的方法。

只需为MyClass中的表select器。

 .MyClass td {border: solid 1px red;} .MyClass table td {border: none} 

(一般适用于所有的内部表格,你也可以做table table td 。)

我认为,这将工作。

 .Myclass tr td:first-child{ } or .Myclass td:first-child { } 

我想设置表的第一列的宽度,我发现这工作(在FF7) – 第一列是50px宽:

 #MyTable>thead>tr>th:first-child { width:50px;} 

在哪里我的标记是

 <table id="MyTable"> <thead> <tr> <th scope="col">Col1</th> <th scope="col">Col2</th> </tr> </thead> <tbody> ... </tbody> </table> 

我想你可以试试

 table tr td { color: red; } table tr td table tr td { color: black; } 

要么

 body table tr td { color: red; } 

其中“身体”是您的表的父母的select器

但是上课很可能是正确的方式。