【发布时间】:2021-12-07 22:20:21
【问题描述】:
我正在使用 CSS bootstrap 4,容器内每行有多个列。根据屏幕大小,这些列可以堆叠在一起,使容器更高,有时超出屏幕上可以显示的内容,需要滚动。我似乎无法找到同时满足这两个条件的方法:
- 如果容器小于浏览器窗口高度,则将容器置于屏幕中间
- 如果容器比浏览器窗口的高度高,不要将容器居中(这样它就不会离开屏幕)
我有代码使下面的容器居中,但是当文本的行数变得比屏幕高时,它会因为 .centered 而离开屏幕,并且不能像普通页面一样滚动
这是我的 HTML:
<div class="container centered" style="width: 100%">
<div class="row justify-content-center">
<div class="col-8" id="main">
Text<br>
Text<br>
Text<br>
<!-- Any number of more lines may be added here -->
</div>
</div>
</div>
还有我的 CSS:
html,
body {
width: 100%;
}
body {
display: -ms-flexbox;
display: flex;
-ms-flex-align: center;
align-items: center;
padding-top: 40px;
padding-bottom: 40px;
background-color: rgb(0, 0, 0);
}
.centered {
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
#main {
background-color: rgb(30,29,38.3);
border-radius: 6px;
box-shadow: 0 0 30px rgb(25, 25, 35);
}
【问题讨论】:
-
CSS 没有容器查询,只有媒体查询。这不能用 CSS 解决,只能用 Javascript。
标签: html css bootstrap-4