【发布时间】:2015-11-04 10:44:48
【问题描述】:
我需要为我的html 上的每 5 行提供一个单独的样式。例如:与不是 5 倍数的其他行相比,第 5、第 10、第 15、第 25 行具有灰色背景。我的问题是我不知道什么是正确的 css 选择器.
为了达到这个效果,我已经做了这些事情,但尽可能避免:
-
为每五次出现添加一个
class属性:<style> tbody tr.5th-row { ..... } </style> </head> <body> <thead> <tr>...</tr> <tr>...</tr> <tr>...</tr> <tr>...</tr> <tr class="5th-row">...</tr> <tr>...</tr> <tr>...</tr> <tr>...</tr> <tr>...</tr> <tr class="5th-row">...</tr> </thead> -
使用 JavaScript 迭代所有行并每五行更改一次样式:
var trs = $("tbody tr") for(var trx = 0; trx < trs.length; trx++) { if(trx + 1 % 5 == 0) { var tr = $(trs[trx]) tr.css({ ..... }) } }
【问题讨论】:
-
:nth-child是你的朋友 -
顺便提一下,CSS标识符不能以数字开头,所以
.5th-row不起作用,但可以转义为.\35 th-row