我有一个表格,它应该始终占据屏幕高度的特定百分比。大多数行的高度都是固定的,但我有一行应该拉伸以填满可用空间。如果该行中某个单元格的内容超过了所需高度,则希望使用overflow:hidden剪切内容。
不幸的是,表格和行不尊重max-height属性(这在W3C规范中指定)。当单元格中的文本过多时,表格会变高,而不是保持指定的百分比。
如果我为表格单元格指定像素的固定高度,可以让其行为良好,但这违背了自动拉伸以填充可用空间的目的。
我已经尝试使用div,但似乎找不到神奇的公式。如果我使用带有display:table、:table-row和:table-cell的div,那么这些div的行为就像一个表格。
有什么线索可以模拟表格上的max-height属性吗?
<head>
<style>
table {
width: 50%;
height: 50%;
border-spacing: 0;
}
td {
border: 1px solid black;
}
.headfoot {
height: 20px;
}
#content {
overflow: hidden;
}
</style>
</head>
<body>
<table>
<tr class="headfoot"><td>header</td></tr>
<tr>
<td>
<div id="content">
put lots of text here
</div>
</td>
<tr>
<tr class="headfoot"><td>footer</td></tr>
</table>
</body>