我使用的表与交替行颜色与此。
t.d. d0 t.d.
background-color: # CC9999;
颜色:黑;
的
tr.d1 td
background-color: # 9999CC;
颜色:黑;
的
< table >
< tr =“d0级>
一号< td > < / td >
一号< td > < / td >
< / tr >
< tr课=“d1”>
二< td > < / td >
二< td > < / td >
< / tr >
- < table >
在这里,我将class用于tr,但我只想用于table。当我使用类表比这适用于tr替代。
我可以写我的HTML像这样使用CSS吗?
<table class="alternate_color">
<tr><td>One</td><td>one</td></tr>
<tr><td>Two</td><td>two</td></tr>
</table>
我如何能使行有“斑马条纹”使用CSS?
$(document).ready(function()
{
$("tr:odd").css({
"background-color":"#000",
"color":"#fff"});
});
tbody td{
padding: 30px;
}
tbody tr:nth-child(odd){
background-color: #4C8BF5;
color: #fff;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table border="1">
<tbody>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
</tr>
<tr>
<td>5</td>
<td>6</td>
<td>7</td>
<td>8</td>
</tr>
<tr>
<td>9</td>
<td>10</td>
<td>11</td>
<td>13</td>
</tr>
</tbody>
</table>
有一个CSS选择器,其实是个伪选择器,叫做n -child。在纯CSS中,你可以做到以下几点:
tr:nth-child(even)
background-color: #000000;
}
注意:IE 8不支持。
或者,如果你有jQuery:
$(document).ready(function()
{
$("tr:even").css("background-color", "#000000");
});
在PHP中有一个相当简单的方法来做到这一点,如果我理解您的查询,我假设您在PHP中编码,您正在使用CSS和javascript来增强输出。
来自数据库的动态输出将携带一个for循环来遍历结果,然后将结果加载到表中。只需要像这样添加一个函数调用:
echo "<tr style=".getbgc($i).">"; //this calls the function based on the iteration of the for loop.
然后将函数添加到页面或库文件中:
function getbgc($trcount)
{
$blue="\"background-color: #EEFAF6;\"";
$green="\"background-color: #D4F7EB;\"";
$odd=$trcount%2;
if($odd==1){return $blue;}
else{return $green;}
}
现在,这将在每个新生成的表行中动态地在颜色之间交替。
这比在所有浏览器上都不能工作的CSS要容易得多。
希望这能有所帮助。
我们可以使用奇数和偶数CSS规则和jQuery方法来替换行颜色
使用CSS
table tr:nth-child(odd) td{
background:#ccc;
}
table tr:nth-child(even) td{
background:#fff;
}
使用jQuery
$(document).ready(function()
{
$("table tr:odd").css("background", "#ccc");
$("table tr:even").css("background", "#fff");
});
-柴油机
背景:# ccc;
的
股份有限公司股份有限公司股份有限公司股份有限公司股份有限公司股份有限公司股份有限公司股份有限公司股份有限公司股份有限公司股份有限公司股份有限公司
背景:# fff;
的
< table >
< tr >
一号< td > < / td >
一号< td > < / td >
< / tr >
< tr >
二< td > < / td >
二< td > < / td >
< / tr >
- < table >
交替行选择器
以下是它的工作原理,以及如何使用模来在不同颜色的行之间交替(这里是3):
ol >李:nth-child (3 n + 1) {
背景颜色:蓝色;
}
ol >李:nth-child (3 n + 2) {
背景颜色:绿色;
}
/*下面的选择器等价于"n -child(3n)"* /
ol >李:nth-child (3 n + 3) {
背景颜色:红色;
}
< ol >
<李/ >
<李/ >
<李/ >
<李/ >
<李/ >
<李/ >
<李/ >
<李/ >
<李/ >
< / ol >
如前所述,选择器中使用的行索引从1开始(而不是0),这就是为什么第1、4、7行的选择器是第n -child(3n+1)。
选择器如何读取
对于索引i的行,选择器n -child(Mn+k)读起来就像(i % M == k)。例如,如果我们想选择所有以3为底取模等于2的行,我们可以在CSS中写n -child(3n+2),换句话说,选择器是这样做的:
const M = 3;
const k = 2;
for (let i = 1; i < 10; i+=1){
// The `nth-child(Mn+k)` selector:
if (i % M == k){
console.log(`${i} selected`);
}
}
输出
2 selected
5 selected
8 selected