使用 Flexbox 时,您可能会遇到让子元素填充其父容器的整个垂直空间的挑战。如果您希望子元素的高度为父元素的 100%,这可能会特别令人沮丧。
这是您的简化版本HTML 和 CSS代码:
HTML:
<div class="container"> <div class="flex-1"></div> <div class="flex-2"> <div class="flex-2-child"></div> </div> </div>
CSS:
.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; }解决方案:align-items:stretch要解决此问题,无需诉诸绝对定位或将 flex-2 元素的高度设置为100%,可以在父容器flex-2上使用align-items:stretch属性。
.flex-2 { display: flex; align-items: stretch; }
.flex-2-child { align-self: stretch; }此方法使您可以更好地控制单个子元素元素。
以上是如何使 Flexbox 子容器占据其父容器的整个高度?的详细内容。更多信息请关注PHP中文网其他相关文章!