有没有办法让HTML5根据负值或正值更改文本颜色
本文关键字:颜色 文本 HTML5 有没有 | 更新日期: 2023-09-27 18:37:22
我真的没有使用HTML 5的经验,我想看看这是否可行。
无论如何,如果值为负数,我可以在这里使用 HTML5 将文本颜色更改为红色?
目前试图避免使用 JavaScript 或 Jquery。
此代码的输出文件将转到 HTML 文件。
vWriteFile.WriteLine("<tr>" + "<td>" + key + "</td>" + "<td>" + iSumOpen + "</td>" + "<td>" + iSumBuy + "</td>"
+ "<td>" + iSumSell + "</td>" + "<td>" + iSumSettleMM + "</td>" + "</tr>");
这是整个方法:
public void printToHTML(string vOutputPath)
{
StreamWriter vWriteFile = new StreamWriter(vOutputPath);
vWriteFile.WriteLine("<table style='"width:100%'">");
vWriteFile.WriteLine("<tr>" + "<td>" + "<b>Account</b>" + "</td>" + "<td>" + "<b>Open</b>" + "</td>" + "<td>" + "<b>Buy</b>" + "</td>"
+ "<td>" + "<b>Sell</b>" + "</td>" + "<td>" + "<b>SettleMM</b>" + "</td>" + "</tr>");
foreach (KeyValuePair<string, List<DataRecord>> kvp in vSummaryResults)
{
string key = kvp.Key; //assigns key
List<DataRecord> list = kvp.Value; //assigns value
int iSumOpen = 0;
int iSumBuy = 0;
int iSumSell = 0;
double iSumSettleMM = 0;
foreach (DataRecord rec in list)
{
if (vSummaryResults.ContainsKey(key))
{
iSumOpen += rec.open;
iSumBuy += rec.buy;
iSumSell += rec.sell;
iSumSettleMM += rec.settleMM;
}
else
{
vSummaryResults.Add(key, list);
}
}
Console.WriteLine(key + "'t" + iSumOpen + "'t" + iSumBuy + "'t" + iSumSell + "'t" + iSumSettleMM + "'t");
Console.WriteLine("---------------------------------------------------------------------");
//vWriteFile.WriteLine("{0},{1},{2},{3},{4}", key, iSumOpen, iSumBuy, iSumSell, iSumSettleMM);
vWriteFile.WriteLine("<tr>" + "<td>" + key + "</td>" + "<td>" + iSumOpen + "</td>" + "<td>" + iSumBuy + "</td>"
+ "<td>" + iSumSell + "</td>" + "<td>" + iSumSettleMM + "</td>" + "</tr>");
}
vWriteFile.WriteLine("</table>");
vWriteFile.Close();
}
编辑:正如Nathan K在注释中指出的那样,你应该使用CSS类。我认为最好的方法是使用某种三元语句:
vWriteFile.WriteLine("<tr><td class='"" + value < 0 ? "negative" : "positive" + "'">" + value + "</td></tr>");
可能也有效的旧答案:
您可以使用一些条件,例如:
if(value < 0) {
vWriteFile.WriteLine("<tr><td style='"background-color:red;'">" + value + "</td></tr>");
}
else {
vWriteFile.WriteLine("<tr><td>" + value + "</td></tr>");
}