如何让 HTML tr(table 行)中的文本居中?
How can I get text in an HTML tr (table row) to center?
我正在像这样在 StringBuilder 中构建一些 HTML:
builder.Append("<tr align='center' valign='top' class=\"skyBlueBackground textAlignCenter\">");
List<String> columnHeadings = GetColumnHeadings(monthCount, _begindate);
foreach (String s in columnHeadings)
{
if (s.Equals("Grand Total"))
{
builder.Append("<td align='left' valign='top' class=\"forestGreenBackground whiteText\"><b>");
}
else
{
builder.Append("<td align='left' valign='top'><b>");
}
builder.Append(s);
builder.Append("</b></td>");
}
builder.Append("</tr>");
尽管我有 class 用于居中文本:
builder.Append("</style>");
. . .
builder.Append(".textAlignCenter { text-align: center; }");
builder.Append("</style>");
...文本左对齐;它的工作原理除此之外(天蓝色背景),它只是保持向左磁化:
我必须怎么做才能使文本居中?
您应该在 TD 而不是 TR 上设置 textAlignCenter,或者将 CSS 定义更改为:
builder.Append(".textAlignCenter td { text-align: center; }");
并且您应该从您的 TD 中删除明确的 "align='left'",因为这仍然会否决 CSS。
如果您询问如何垂直对齐文本,您可以使用 vertical-align
CSS 属性。有关详细信息,请参阅 here。
您也可以使用 valign
属性,但在 HTML5 中已弃用,因此不推荐使用。
你的问题很简单,你已经正确创建了 css class 属性 .textAlignCenter,但是你的属性 align="left" 在 <td>
有样式优先。
我认为你可以做两个解决方案:
- 将 class .textAlignCenter 放在要对齐的 td 上
中心.
去掉td的align="center",加一个css之类的
这个:
tr td {text-align:left}
tr td.textAlignCenter {text-align:center}
最后一个解决方案覆盖了最后一个样式。
我正在像这样在 StringBuilder 中构建一些 HTML:
builder.Append("<tr align='center' valign='top' class=\"skyBlueBackground textAlignCenter\">");
List<String> columnHeadings = GetColumnHeadings(monthCount, _begindate);
foreach (String s in columnHeadings)
{
if (s.Equals("Grand Total"))
{
builder.Append("<td align='left' valign='top' class=\"forestGreenBackground whiteText\"><b>");
}
else
{
builder.Append("<td align='left' valign='top'><b>");
}
builder.Append(s);
builder.Append("</b></td>");
}
builder.Append("</tr>");
尽管我有 class 用于居中文本:
builder.Append("</style>");
. . .
builder.Append(".textAlignCenter { text-align: center; }");
builder.Append("</style>");
...文本左对齐;它的工作原理除此之外(天蓝色背景),它只是保持向左磁化:
我必须怎么做才能使文本居中?
您应该在 TD 而不是 TR 上设置 textAlignCenter,或者将 CSS 定义更改为:
builder.Append(".textAlignCenter td { text-align: center; }");
并且您应该从您的 TD 中删除明确的 "align='left'",因为这仍然会否决 CSS。
如果您询问如何垂直对齐文本,您可以使用 vertical-align
CSS 属性。有关详细信息,请参阅 here。
您也可以使用 valign
属性,但在 HTML5 中已弃用,因此不推荐使用。
你的问题很简单,你已经正确创建了 css class 属性 .textAlignCenter,但是你的属性 align="left" 在 <td>
有样式优先。
我认为你可以做两个解决方案:
- 将 class .textAlignCenter 放在要对齐的 td 上 中心.
去掉td的align="center",加一个css之类的 这个:
tr td {text-align:left} tr td.textAlignCenter {text-align:center}
最后一个解决方案覆盖了最后一个样式。