我有一个带分数的变量,我有php根据这个变量改变div元素的颜色。此if语句始终解析为True。有谁看到了这个漏洞?
<style>
.poster{
background-color:<?php
if($voteRating > 80.0){
echo "#2ecc71;";
}
else{
echo "#f1c42c;";
}
?>
}
.year{
color:;
}
</style>
答案 0 :(得分:1)
就个人而言,我会创建两个CSS类,并在元素上回显一个合适的类名。
if($voteRating < 80)
{
echo "<div class='one-class'>";
}
else
{
echo "<div class='another-class'>";
}
或者,考虑到这更多是前端的事情,也许使用ajax来确定$ voteRating然后用javascript更改样式。只是一些替代方案。
答案 1 :(得分:0)
尝试这样的事情: -
<style>
.poster{
background-color:<?php echo ($voteRating > ceil(80.0)) ? "#2ecc71;" : "#f1c42c;"; ?>
}
.year{
color:;
}
</style>
答案 2 :(得分:0)
代码没有错。尝试回显$ voteRanking以查看它是否提供超过80.0
答案 3 :(得分:-1)
您应该为每种颜色创建不同的类,然后使用javascript或php条件在页面呈现或任何其他事件触发时设置类。这样就很容易调试代码问题。
例如
<style>
.posterhigh{
background: #2ecc71;
}
.posterlow {
background: #f1c42c;
}
</style>