将nth-child应用于单个类的问题。

时间:2011-11-29 18:23:22

标签: css css3 css-selectors

首先,非常感谢您提前的时间。

我在费城的高等教育机构工作。我们正在尝试利用第n个子伪类来使表格中的每一行都变灰。

我在Styles.css文件中编写的代码行是

table.oddrows tr:nth-child(2n+3) {background-color: #eeeeee;}

我使用了2n + 3,因为表格的第一行将比其他每行都更深,因为它将是一个标题,所以我希望它开始将背景颜色应用到第3行,然后每两行之后的行(即3,5,7等)

我们使用Ektron的CMS(版本8.01 SP1),无论出于何种原因,该类都不会显示在可用的类列表中,当我尝试手动应用它时(即手动将<table class="oddrows" width="500"><tbody>放入代码的主体)它仍然不起作用。

我已经多次清理过我的缓存了,我还在画一个空白。 (我正在使用IE 8,作为记录)

有什么想法吗?我读过的所有东西都说我的语法是正确的,我准备把头发撕掉了。

再次感谢您的时间!

2 个答案:

答案 0 :(得分:2)

IE8中不支持nth-child选择器。对于IE,它仅在9及以上版本中可用。

答案 1 :(得分:0)

为了得到类似的东西,你可能不得不偏离纯CSS,并使用一些jQuery。如果您已经在网站中使用jquery进行其他操作,那么这很简单,因为它只会在文档就绪语句中添加几行,如下所示:

jQuery(document).ready(function() {
   $('.oddrows tr:nth-child(2n+3)).addClass("darker");  
});

然后你还会有一个CSS类.darker:

.darker {background-color:#eee}

现在如果你还没有使用jQuery(或者没有选项),这显然不起作用。