Мне нужно иметь вертикальный div родительской высоты, который содержит меньшие div. В случае, если есть дополнительное место, все кроме последних div должны быть помещены сверху, и самый последний div должен быть помещен внизу. Я реализовал это с помощью Bootstrap и flex.
Теперь я подумал, что было бы неплохо, если бы, когда это возможно, нижний элемент div был бы внизу области просмотра, а не внизу содержащего элемента div. Я реализовал его с position: sticky
, и он работает в Chrome, но не в Firefox (оба должны поддерживать position: sticky
).
Мой код:
<div id="container" class="d-flex flex-column">
<div class="flex-item">1</div>
<div class="flex-item">2</div>
<div class="d-flex flex-column last">
<div class="flex-item mt-auto last-inner">3</div>
</div>
</div>
CSS:
#container {
height: 1000px;
}
#container .last {
flex: 1;
}
#container .last-inner {
position: sticky;
bottom: 0;
}
JSFiddle