В CSS 2.1 нет способа создать элемент, занимающий остальное пространство по вертикали.Блочные элементы, такие как теги Div, будут автоматически растягиваться, чтобы заполнить пространство по горизонтали, но не будут делать это по высоте.Это означает, что вы не можете заставить что-то, например страницу содержимого или кнопки, растянуться, чтобы заполнить оставшуюся часть пустого пространства.
Лучший способ добиться чего-то подобного - с помощью уловок или точного знаниянасколько высоко будет каждый элемент.Например, если вы знаете точный процент, который будут составлять другие элементы, вы можете жестко запрограммировать процент в вашей таблице стилей, как описано здесь.Другой трюк состоит в том, чтобы нижний элемент заполнил все окно и скрыл верхнюю половину формой.
Таблицы, однако, являются единственными элементами, которые растягиваются, чтобы заполнить вертикальное пространство.Это может быть единственным доступным решением для вас.Пример этого показан ниже:
<form ...>
<table id="container">
<tr><td id="top">Form elements go here</td></tr>
<tr><td>Buttons go here</td></tr>
</table>
</form>
И CSS:
#container {
height: 100%;
width: 100%;
}
#top {
height: 200px; /* Replace this with the appropriate height, or remove altogether. */
}
.buttons {
height: 100%; /* Used to stretch the buttons to fill the element. */
}