Я пытаюсь заполнить вертикальное пространство элемента Flex внутри Flexbox.
.container {
height: 200px;
width: 500px;
display: flex;
flex-direction: row;
}
.flex-1 {
width: 100px;
background-color: blue;
}
.flex-2 {
position: relative;
flex: 1;
background-color: red;
}
.flex-2-child {
height: 100%;
width: 100%;
background-color: green;
}
<div class="container">
<div class="flex-1"></div>
<div class="flex-2">
<div class="flex-2-child"></div>
</div>
</div>
А вот и JSFiddle
flex-2-child
не заполняет необходимую высоту, за исключением двух случаев, когда:
flex-2
имеет высоту 100% (что странно, потому что гибкий элемент по умолчанию имеет 100% + он глючит в Chrome)flex-2-child
имеет абсолютную позицию, что также неудобно
Это не работает в Chrome или Firefox в настоящее время.
height:100%
вместо этого рендерится с естественным ростом. И странная вещь, если я изменю их высоту на auto
, то они будут отображаться так, height:100%
как я пытался это сделать. Это определенно не интуитивно понятно, если так должно работать.