我正在尝试填充 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-child
flex-2
目前这在 Chrome 或 Firefox 中不起作用。
align-items: stretch
与 David Storey 的回答类似,我的解决方法是:
.flex-2 { display: flex; align-items: stretch; }
注意height: 100%应该从子组件中移除(见注释)。
height: 100%
或者align-items,您可以align-self仅在.flex-2-child要拉伸的项目上使用。
align-items
align-self
.flex-2-child