我正在尝试在flexbox内填充flex项目的垂直空间。
.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。
这是我使用css +的解决方案
首先,如果第一个孩子(flex-1)应该为100px,则不应为flex。实际上,在css +中,您可以设置灵活和/或静态元素(列或行),并且示例变得如此简单:
容器CSS:
并且显然包括CSS + 0.2核心
听到小提琴