很抱歉收到新手的帖子,但我是bootstrap的新手(使用4.0版(,已经读了很多书,但未能完成将两个div堆叠在一起的简单任务。
<div class="d-flex flex-column">
<div style="background: blueviolet">
Flex item 1
</div>
<div style="background: burlywood">
Flex item 2
</div>
</div>
我的目标是让Flexbox 1
占据50%的高度,Flexbox 2
占据剩余的高度,或者让Flexbox 1
占据40%的高度,让Flexbox 2
占据剩余的空间。
我一直在学习引导程序文档。我还可以调查哪些其他资源?
谢谢你的帮助。
您可以使用类flex-fill
自动填充其余空间。
尝试调整类.item-1
的高度以查看结果。
https://jsfiddle.net/ramseyfeng/bqvwcLe5/1/
html,body {
height: 100%;
}
.item-1 {
height: 50%;
}
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.css" rel="stylesheet"/>
<div class="d-flex flex-column h-100">
<div style="background: blueviolet" class="item-1">
Flex item 1
</div>
<div style="background: burlywood" class="flex-fill">
Flex item 2
</div>
</div>
通常有几个属性需要确保在父项和每个子项上设置,以便使flex项按照预期的方式运行。
看看这个方便的摘要:https://css-tricks.com/snippets/css/a-guide-to-flexbox/
你也可以参考这个:https://www.w3schools.com/css/css3_flexbox.asp
您的示例显示为两个div,一个垂直地位于另一个之上。这不是你想要的吗?还是你只是想让他们更高?
如果你想让你的封装DIV更高,以使你的柔性项目拉伸得更高,你可以考虑设置包装的最小高度。例如,请参阅如何使flexbox布局占用100%的垂直空间?或者flexbox+bootstrap 4。如何拉伸.col-***的孩子?
如果你想让一个项目占可见窗口空间的50%,你可以在这个对象上使用这个css:min-height: 50vh;