Я пытаюсь создать HTML-таблицу с прокручиваемым телом, чтобы вы всегда могли видеть заголовок.Я хочу, чтобы таблица находилась внутри div и имела максимальную высоту 100% от высоты div.Элементы таблицы генерируются динамически, поэтому, если их слишком много, вы получите полосу прокрутки на теле.Но если элементов очень мало, я хочу, чтобы таблица сократилась и не использовала всю высоту div.
Я могу установить высоту таблицы на 100%, а также установить отображение для блока tbody и задать ему максимальную высоту 100%.Проблема в том, что даже если нет элементов, тело таблицы по-прежнему использует полную высоту для отображения пустой таблицы.
Я могу установить фиксированную максимальную высоту для tbody и установить высоту для таблицы наавто.Таким образом, таблица сокращается, когда есть несколько элементов вместо того, чтобы показывать пустое тело.Проблема в том, что высота больше не контролируется div.
html:
<div>
<table>
<thead>
<tr>
<th > col1</th>
<th> col 2</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</div>
css
tbody{
display: block;
max-height: 100%;
overflow: auto;
}
table{
height: 100%;
border: 1px solid black;
}
div{
height: 300px;
}