我正在使用具有交替行颜色的表格 .
tr.d0 td {
background-color: #CC9999;
color: black;
}
tr.d1 td {
background-color: #9999CC;
color: black;
}
<table>
<tr class="d0">
<td>One</td>
<td>one</td>
</tr>
<tr class="d1">
<td>Two</td>
<td>two</td>
</tr>
</table>
这里我使用的是 tr
类,但我只想用于 table
. 当我使用表格比这个适用于 tr
替代 .
我可以使用CSS编写这样的HTML吗?
<table class="alternate_color">
<tr><td>One</td><td>one</td></tr>
<tr><td>Two</td><td>two</td></tr>
</table>
如何使用CSS使行具有“斑马条纹”?
9 回答
您可以使用nth-child(奇数/偶数)选择器,但并非所有浏览器(ie 6-8, ff v3.0)都支持这些规则,因此为什么大多数解决方案都会回退到某种形式的javascript / jquery解决方案,以便将这些类添加到这些非兼容浏览器的行中以获取虎条纹效果 .
你有:nth-child()伪类:
在
:nth-child()
的早期,browser support有点穷 . 这就是为什么设置class="odd"
成为一种常见的技术 . 在2013年底我'm glad to say that IE6 and IE7 are finally dead (or sick enough to stop caring) but IE8 is still around—thankfully, it' s the only exception .是的你可以但是你必须使用 :nth-child() 伪选择器(虽然支持有限):
有一个CSS选择器,实际上是一个伪选择器,称为nth-child . 在纯CSS中,您可以执行以下操作:
Note: IE 8中不支持 .
或者,如果你有jQuery:
有一种相当简单的方法可以在PHP中执行此操作,如果我理解您的查询,我假设您使用PHP编写代码并使用CSS和javascript来增强输出 .
来自数据库的动态输出将带有for循环以迭代结果,然后将结果加载到表中 . 只需添加一个函数调用,如下所示:
然后将该函数添加到页面或库文件中:
}
现在,这将在每个新生成的表行的颜色之间动态交替 .
它比使用CSS无法在所有浏览器上运行容易得多 .
希望这可以帮助 .
只需将以下内容添加到您的html代码中(使用
<head>
)即可完成 .HTML:
比jQuery示例更容易,更快捷 .
我们可以使用奇数和偶数CSS规则以及jQuery方法来替换行颜色
Using CSS
Using jQuery
大多数上述代码不适用于IE版本 . 适用于IE其他浏览器的解决方案就是这样 .