![](/img/trans.png)
[英]How to give alternating table rows different background colors using PHP
[英]Alternating table row background colors on a dynamic table
我有一个由foreach
循环生成的表。
在循环之前,我创建$iteration = 0
。 在循环开始时,它会增加$iteration
。
然后我这样做:
if($iteration % 2 == 0) {
$greyRow = 'css for a grey row';
}
我最多只能测试三行,但是在当前规则下,似乎第二行和第三行显示为灰色,而不是第二行。
以下将为偶数行添加一个grey
类。
echo '<tr', ($iteration & 1 ? ' class="grey"': ''), '>';
这使用按位运算符 。 这是微优化,但远比模运算符(尽管在这些情况下众所周知)更优化。
另外,我鼓励您将CSS类用于偶数和奇数行,而不是内联样式,或者仅切换单个类(即grey
)。
echo '<tr class="', ($iteration & 1 ? 'even': 'odd'), '">';
也许您还需要使用else
语句将其设置回奇数行上的其他颜色。 在没有看到更多实现的情况下不太确定。
if ($iteration % 2 == 0) {
$css = 'css for a grey row';
} else {
$css = 'css for a white row';
}
我喜欢做这种事情。
<style type="text/css">
.odd td { background: #eee; }
</style>
<tr class="<?= ++$iteration % 2? 'odd' : 'even'; ?>">....</tr>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.