2014-03-25 109 views
0

我已经声明了一个风格特定CSS不来在IE 8日起

.tableStyle2 tr:nth-child(even) { 
background-color: #C5F0FC; 
} 

在我的样式表。但它不反映在IE浏览器上,适用于FF和Chrome。当我尝试在IE中检查我的调试时,它也不存在,但是出现在chrome和FF中。

对此有任何建议。

+1

http://stackoverflow.com/questions/10577674/how-to-make-internet-explorer-8-to-support-nth- child-css-element – Banana

+1

正如其他人所说,(IE8及以下)不支持CSS3。要么通过[selectivizr](http://selectivizr.com/)去填充路线,要么将类应用到偶数对象,然后将颜色应用到该对象上,但是不清楚这是否适用于您的应用程序。 –

+0

http://stackoverflow.com/questions/4742450/why-wont-my-alternating-css-table-row-styling-work-in-internet-explorer。它解决了我的问题。 –

回答

3

老版本的IE不允许使用CSS3的第n个子选择器。解决方法是使用jQuery在第n个孩子上定义一个类,然后相应地设置该类的样式。

jQuery的

$('#element li:nth-child(2n)').addClass('even'); 

CSS

#element li.even { 
    ... 
} 
+0

为什么不是 - '$('#element li:nth-​​child(偶数)')。addClass('even');' –

+0

这也可以。当我写出来的时候只是空白。同样的结果,少了两个字符;)感谢编辑。使其更清晰。 – robbclarke

+0

没问题罗伯特,很好的答案。 –

0

您可以使用selectivizr。这是一个非常不错的JS插件,它使IE支持CSS3选择器

http://selectivizr.com/