如何为文本创建动态颜色?

时间:2015-11-25 21:42:10

标签: php html css colors

我有一个包含数字的变量。现在我想,如果数字是正数,那么它的颜色是绿色,如果那个数字是负数,那么它的颜色是红色。像这样:

<?php
    $var1 = 5;
    $var2 = -2;
?>

<div> <?php echo $var1; ?></div>
<div> <?php echo $var2; ?></div>

应该注意的是,实际上只有一个变量,它既可以是正面的,也可以是负面的。

我也想要这个结果:

<div style='color:green;'>5</div>
<div style='color:red;'>-2</div>

2 个答案:

答案 0 :(得分:3)

例如,在PHP中使用内联三元运算符。 (这就像一个If语句)

<div style='color: <?php echo ($var1 > 0 ? 'green' : 'red') ?> ;'>5</div>
<div style='color: <?php echo ($var1 > 0 ? 'green' : 'red') ?> ;'>-2</div>

答案 1 :(得分:2)

由于你有很多数字,为什么不只是使用一个简单的功能?另外我建议使用类而不是内联样式,因为这通常是首选:

function getNumberHtml($num) {
    $class = ($num < 0) ? 'negative' : 'positive';
    return "<div class='$class'>$num</div>";
}
echo getNumberHtml(56);
echo getNumberHtml(-5);

然后只需将您想要的内容添加到CSS文件中即可。相应地编辑您的样式:

.negative {
    color: red;
}
.positive {
    color: blue;
}