Answers:
对于现代浏览器,请td:nth-child(2)
用于第二个td
和td:nth-child(3)
第三个。记住,它们td
为每一行检索第二和第三行。
如果需要与版本9之前的IE兼容,请使用Tim推荐的同级组合器或JavaScript 。另请参阅我对此相关问题的回答,以获取有关其方法的解释和说明。
td:nth-of-type(3)
效果更好。td:nth-child(3)
将匹配是一个元素都一个td
和其父母的第三个孩子,不管元素类型的前两个兄弟姐妹的。不管之前有多少个非元素,td:nth-of-type(3)
它将获得第三个。如果在您想要的元素之前没有非元素,则两个选择器都将匹配同一事物。td
td
td
对于IE 7和8(以及其他不支持CSS3的浏览器(不包括IE6)),您可以使用以下命令获取第二个和第三个子代:
第二个孩子:
td:first-child + td
第三个孩子:
td:first-child + td + td
然后,只需+ td
为您要选择的每个其他孩子添加另一个。
如果您想支持IE6,也可以这样做!您只需要使用一些javascript(在此示例中为jQuery):
$(function() {
$('td:first-child').addClass("firstChild");
$(".table-class tr").each(function() {
$(this).find('td:eq(1)').addClass("secondChild");
$(this).find('td:eq(2)').addClass("thirdChild");
});
});
然后在CSS中,您只需使用这些类选择器即可进行所需的任何更改:
table td.firstChild { /*stuff here*/ }
table td.secondChild { /*stuff to apply to second td in each row*/ }