【发布时间】:2019-10-24 17:02:06
【问题描述】:
我正在尝试找到动态设置表格列宽度的最佳方法,而不必单独设置每个单元格的宽度。
我有一个表格,无论内容如何,每列都应具有固定宽度。如果每个单元格都单独设置了宽度和最大宽度,则此方法可以正常工作。但这很难动态设置。
我正在尝试使用 colgroup 和 col 标签来设置每列的宽度,但这似乎不起作用。
table, th, td {
border: 1px solid black;
}
th, td {
overflow: hidden;
white-space: nowrap;
}
<table>
<colgroup>
<col style="width: 50px; max-width: 50px;">
<col style="width: 50px; max-width: 50px;">
<col style="width: 50px; max-width: 50px;">
</colgroup>
<tr>
<th>ISBN</th>
<th>Title</th>
<th>Price</th>
</tr>
<tr>
<td>3476896</td>
<td>My first HTML</td>
<td>$53</td>
</tr>
<tr>
<td>5869207</td>
<td>My first CSS</td>
<td>$49</td>
</tr>
</table>
我希望该示例显示截断表的第一列和第二列,但它不起作用。
【问题讨论】:
-
要固定表格的宽度,您需要将 table-layout 属性重置为固定developer.mozilla.org/en-US/docs/Web/CSS/table-layout 在 col 元素上设置宽度是一个不错的方法。我很惊讶 max-width 起作用了。