gpt4 book ai didi

php - 表行颜色更改未按计划工作

转载 作者:太空宇宙 更新时间:2023-11-04 00:28:23 24 4
gpt4 key购买 nike

我有一个数据库和一个名为status 的表。状态 0 表示 未读,状态 1 表示已读 如果状态为 0,则个别行应该变成石灰。如果为 1,则为白色。

$colors = array("lime", "white");

echo "<style type=\"text/css\">";
echo "tr:hover {";
echo "background: #cc00ff;";
echo "color: white;";
echo "}";
echo "tr {";
echo "font-family: Verdana, Geneva, sans-serif;";
echo "font-size: 13px;";
echo "background: $colors[$status];";
echo "}";
echo "</style>";

$status 变量在此处设置:

while ($row = mysql_fetch_row($result))
{
echo "<tr>";
//rows for <table>
echo "</tr>";
$status = $row[4];//status table either a 0 or 1
}

但是,当设置表格行背景时,所有表格行都会发生变化,而不仅仅是状态为 0 的行。

如何根据状态值使各行改变颜色?

最佳答案

您误解了浏览器如何应用 CSS。它们本质上具有 CSS 规则的“全局状态”。当您指定更多规则(例如通过 <style>style= )时,它们只会更新此“全局状态”,然后将其应用于您页面中的每个元素。

要实现您想要的效果,只需将一个类应用于表格行,具体取决于您希望它如何显示,例如

if ($status == 0) {
echo '<tr class="unread">';
} else {
echo '<tr class="read">';
}

然后有一个 CSS 定义,为每种情况应用不同的样式:

<style type="text/css">
tr.unread {
background: lime;
}
tr.read {
background: white;
}
</style>

关于php - 表行颜色更改未按计划工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5492857/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com