0

我需要表达

`tr:nth-child(2n){background-color: #ddd;}` 

为我动态创建的表的第二行着色。但是这个表达式只适用于 IE9。那么是否也可以为 IE8 启用这些 CSS3 伪类呢?

4

3 回答 3

3

据我所知,对于 IE8 而言。但是,有一个使用 jQuery 的解决方案,.filter(":even"). 请参阅有关它的文档。它适用于 IE7 或更高版本。

于 2012-11-29T15:17:51.110 回答
0

您可以在 IE 中使用诸如selectivizr之类的 JavaScript 填充程序获取第 n 个子选择器。这篇文章对于伪造功能http://abouthalf.com/2011/07/06/poor-mans-nth-child-selector-for-ie-7-and-8/也很有趣。

于 2012-11-29T15:23:10.490 回答
0

我是通过 Prototype JS 完成的。也适用于 IE8。

var rowCounter = 0;
$$('tr').each(function (row) { /*$$('tr') == array of tr tags*/
    if (rowCounter % 2 === 0) { /*modulo dividing find even element*/
        row.addClassName('even');
    }
    rowCounter += 1;
});

访问:http: //jsfiddle.net/P9SHy/3/

于 2013-10-17T14:55:16.450 回答