bootstrap-4 - 使用行/容器引导程序填充窗口剩余高度
问题描述
在过去的 3 天里,我一直在寻找解决此问题的方法,但没有任何结果。
所以,我有一个必须适合窗口的 HTML 页面,并且我使用的是 bootstrap 4.1.1。这个页面非常简单:
- 1 标题行,自动或固定高度
- 1 内容行,必须填满剩余的窗口空闲空间
整个代码大约有 250 行,所以我将尝试只写一个我需要的示例:
<body>
<div id="header" class="container-fluid">
<!--Bootstrap rows and stuffs that actually work well
</div>
<div class="container-fluid">
<div class="row" id="main-row">
<!--FIRST COLUMN: SUMMARY-->
<div id="menu" class="col-2 box">
<!--Here i have a navbar menu-->
</div>
<!--SECOND COLUMN: CONTENT-->
<div id="content" class="col-8 box">
<!--Here i have contents: one video tag and one carousel-->
</div>
<!--THIRD COLUMN: DESCRITPION-->
<div id="description" class="col-2 box">
<!--Here i some text-->
</div>
</div>
</div>
我只需要整个第二个容器流体(或其中的单行)来填充窗口的其余部分,使每一列都保持在该高度。
这是我尝试过的:
- 正文和 html 高度设置为 100%;
- 尝试使用一个大容器来存放标题和内容,而不是两个
- 将第二个容器的高度设置为 100%/inherit/almostTriedEverything: 这很奇怪,它实际上设置为窗口高度的 100%,但忽略了标题高度(所以我仍然有一个垂直滚动条)
- 很多其他的东西,比如类似表格的布局,flex(我想避免它,因为 IE 兼容性)和几乎所有在网上找到的解决方案
有趣的事实:引导列完全忽略了身体高度,它们超过了它的下限。
解决方案
如果这可以帮助某人,我已经通过解决方法解决了这个问题。
Bootstrap 几乎不关心高度并保持它们固定(我的意思是,例如,如果窗口高度降低,标题不会调整其高度)。因此,将标题高度声明为(在我的情况下,它非常适合)165px 允许我计算第二行的高度
height: calc(100vh - 165px);
不是最好的解决方案,但它有效
推荐阅读
- python - Windows 10/Linux (Manjaro 18.1.5) 上的 Python 3.8:使用 pip 安装的 TestPyPI 包的 ModuleNotFoundError
- asp.net-core-signalr - .Net Core 3.1 SignalR 客户端 - 如何将 JWT 令牌字符串添加到 SignalR 连接配置?
- python - 将列表的每个元素增加一定数量
- angular - Service Worker 注册失败:TypeError:无法为范围注册 ServiceWorker
- python - 脸书刮刀
- python - 是否有类似于 TensorFlow 的 make_csv_dataset 的东西可以与字符串变量一起使用?
- nlp - IBM 自然语言处理项目(初学者入门问题)
- mysql - mySQL on duplicate, update.... IF 语句问题
- javascript - js/array : 比较 3 个数组并“转移”一个值
- java - 单击一次按钮后如何使一组新的 JTextFields 出现在新行上