Make alternating CSS table row style work in Internet Explorer

daniel picture daniel · Jan 20, 2011 · Viewed 17.1k times · Source

I use this CSS code to display a database output in rows where the colors repeat in every 2nd row

tbody tr:nth-child(2n) td, tbody tr.even td {  
    background: none repeat scroll 0 0 #E5ECF9;  
}

If I open it in my IE it won't work. Any advice?

I am using IE 8.

Answer

Šime Vidas picture Šime Vidas · Jan 20, 2011

IE8 does not support the :nth-child CSS property. You can make it work in IE8 with this script:

https://github.com/roylory/ie7-js

How to use it:

You can Include it via conditional comments, e.g.:

<!--[if lte IE 9]>
<script src="IE9.js"></script>
<![endif]-->

The script will only load in IE9 and below, other browsers do not see it.

Live demo: https://jsbin.com/koyahe/edit?html,css,output

(This demo should work in all versions of IE.)