在我的表格中,我设置列中第一个单元格的宽度为100px。 但是,当此列中的某个单元格中的文本太长时,列的宽度就会超过100px。如何禁用此扩展?
当前回答
这也有助于,在最后一个“填充单元格”,宽度:auto。这将占用剩余空间,并保留指定的所有其他维度。
其他回答
你不需要设置“fixed”-你只需要设置overflow:隐藏,因为列宽度已经设置好了。
如果对表的访问受限,那么使用类或内联样式可能会比较复杂。
或者你也可以瞄准每一行的第一个td和第th个子元素(也就是第一列)
当我用width测试它时,下面的规则对我有用,但由于某种原因,max-width不适用:
thead, tbody tr {
display:table;
width:100%;
table-layout:fixed;
}
tr th:first-child, tr td:first-child {
width:100px;
}
您需要在相应的CSS中编写这些内容
table-layout:fixed;
使接受的答案响应小屏幕时,小于固定宽度。
HTML:
<table>
<tr>
<th>header 1</th>
<th>header 234567895678657</th>
</tr>
<tr>
<td>data asdfasdfasdfasdfasdf</td>
<td>data 2</td>
</tr>
</table>
CSS
table{
border: 1px solid black;
table-layout: fixed;
max-width: 600px;
width: 100%;
}
th, td {
border: 1px solid black;
overflow: hidden;
max-width: 300px;
width: 100%;
}
JS小提琴
https://jsfiddle.net/w9s3ebzt/
如果您需要一个或多个固定宽度的列,而其他列需要调整大小,请尝试将min-width和max-width设置为相同的值。