如何在html表格上创build斑马条纹,而不使用javascript和奇数类的代?
我想斑马条纹一个HTML表,而不使用任何js的东西或编写服务器端代码生成表/行的奇数类。 是否有可能使用原始的CSS?
有可能,CSS3select器:
tr:nth-child(even) { background-color: red; } tr:nth-child(odd) { background-color: white; }
根据caniuse.com ,现在每个浏览器都支持它。
如果你正在改变的是背景颜色,那么下面的代码就可以工作,其中test.gif是一个40px高的图像,顶部20px一种颜色,最底部的20像素是另一种颜色。 如果你需要改变任何其他的CSS属性,你几乎卡住了。
table { background: url(test.gif) top; } table tr { height: 20px; }
http://www.w3.org/Style/Examples/007/evenodd CSS 3 nth孩子。 由于浏览器支持是有限的,你可以重现Sizzle的行为(包括在,例如jquery)
(在CSS <= 2)没有。 不幸的是,没有任何select器(在CSS <= 2),根据位置(根据它的父母的孩子中的数字)来操作,我相信你只需要用CSS就可以做到这一点。
注意自己:已经阅读了CSS3!
在http://www.w3.org/TR/css3-selectors/#structural-pseudos你可以find使用nth-child的解释和例子:;
tr:nth-child(2n+1) /* represents every odd row of an HTML table */ { background-color: green; } tr:nth-child(odd) /* same */ { background-color: green; } tr:nth-child(2n+0) /* represents every even row of an HTML table */ { background-color: pink; } tr:nth-child(even) /* same */ { background-color: pink; }
与浏览器兼容性祝你好运 – 你需要它。
有黑客使其在IE浏览器(使用JS) – 我会离开筛选给你。