我读到表格的每一列都可以使用<colgroup>
和<col>
进行样式设置。我尝试了下面这个,但风格的表现似乎不起作用。我该如何解决?
当我使用width
属性执行此操作时,它可以正常工作。 text-align
属性有什么问题吗?
<html><body><table>
<colgroup>
<col style="text-align:right" />
<col style="text-align:center" />
<col style="text-align:left" />
</colgroup>
<tr>
<td>aaaaaaaaaaa</td>
<td>bbbbbbbbbbb</td>
<td>ccccccccccc</td>
</tr>
<tr>
<td>aaa</td>
<td>bbb</td>
<td>ccc</td>
</tr>
</table></body></html>
结果是默认情况下每个列都保持对齐,忽略colgroup
中的规范。
我正在使用Chrome 17。
答案 0 :(得分:6)
虽然对colgroup和col的支持似乎很不稳定,但我不认为应该用洗澡水将婴儿扔出去。我认为表格有它们的位置,以显示表格数据。在我看来,使用div来显示桌面恐惧症的表格数据边界。
<html><body>
<style>
.left {text-align:left;}
.center {text-align:center;}
.right {text-align:right;}
</style>
<table>
<tr>
<td class="left">aaaaaaaaaaa</td>
<td class="center">bbbbbbbbbbb</td>
<td class="right">ccccccccccc</td>
</tr>
<tr>
<td class="left">aaa</td>
<td class="center">bbb</td>
<td class="right">ccc</td>
</tr>
</table>
</body></html>
答案 1 :(得分:4)
如果不需要表格,以下是如何做到无表格,以防万一:
HTML:
<div id="container">
<div class="left">left aligned text</div>
<div class="center">center aligned text</div>
<div class="right">right aligned text</div>
</div>
CSS:
.container {}
.left {
width:100px;
float:left;
text-align:left;
}
.center {
width:100px;
float:left;
text-align:center;
}
.right {
width:100px;
float:left;
text-align:right;
}
(你可以用逗号统一所有常见的样式,然后将文本对齐分开)
答案 2 :(得分:0)
不要使用表格,使用div。显然,以下内容应该分为类等,但它可以工作。
<html><body>
<div style="display: table">
<div style="display: table-row">
<div style="display: table-cell;">aaaaaaaaaaa</div>
<div style="display: table-cell;">bbbbbbbbbbb</div>
<div style="display: table-cell;">ccccccccccc</div>
</div>
<div style="display: table-row">
<div style="display: table-cell; text-align:right;">aaa</div>
<div style="display: table-cell; text-align:center;">bbb</div>
<div style="display: table-cell; text-align:left;">ccc</div>
</div>
</div>
</body></html>