我使用PHP从MySQL数据库中提取数据到网页上的表。这工作得很好,但我想根据变量的值改变一些输出的字体。
输出代码如下所示:
<td><font face="Arial, Helvetica, sans-serif"><?php echo $variable; ?></font></td>
如果$variable的值小于0,我想将字体更改为红色。
试试这个:
<td><span style="font-family:Arial, Helvetica, sans-serif;<?php if($variable<0)echo "color:red"?>"><?php echo $variable; ?></span></td>
注意,<font>
标签在很久以前就被弃用了,所以我用<span>
标签代替了它。
从HTML 4.01开始,FONT
标签就被贬低了,你应该用CSS代替。
<td style='color:red;'><?php echo $variable; ?></td>
CSS: .tdRed{
color:red;
}
<td class='tdRed'><?php echo $variable; ?></td>
编辑:
要用某个变量自动更改它,可以将其包含在:
<td <?php if($variable == 'something'){ php?>class='tdRed'<?php } php?>><?php echo $variable; ?></td>
我不会使用font
标记或内联css,但类:
<td class="font_class <?php echo ($variable < 0) ? 'alert' : ''; ?>><?php echo $variable; ?></td>
和在css中:
.font_class {
font-family: Arial, Helvetica, sans-serif;
}
.alert {
color: red;
}
在font
标签中嵌入if
<font face="Arial, Helvetica, sans-serif" <?php if ($variable < 0): ?>color="red"<?php endif; ?>><?php echo $variable; ?></font>
最好的方法是在PhP中使用CSS和test value
HTML/PhP看起来像:
<td<?php if($variable<0) echo 'class="subzero"'; ?>><?php echo $variable; ?></td>
和CSS:
td.subzero {color : #FF0000;}
你的字体也应该在css中设置
<td style="font face='Arial, Helvetica, sans-serif;' <?php if($variable == 0){echo "font-color:red;"} ?> ">
<?php echo $variable; } ?>
</td>
如果您知道$变量可能呈现的所有结果,那么也可以使用Switch语句而不是If语句。在有很多可预测结果的情况下,开关会更好地使用。
Adam92
我的PHP有点生疏,但这里是总体思路:
<td><font face="<? if ($variable == [whatever]){ ?>Arial, Helvetica, sans-serif" <? else if ($variable == [whatever]) {?> Unicorn Font <? } ?> ><?php echo $variable; ?></font></td>
用你想要的字体替换unicorn font
。
或者,正如我刚刚意识到的,如果你想让它变成红色:
<? $color = $variable < 0 : "red" ? ""> ?>
<td><font><span style="font-family: Arial, Helvetica, sans-serif; color:<? echo $color ?>"><?php echo $variable; ?></span></td>