html - 如何在滚动屏幕底部修复一个容器并确保该容器是流动的?
问题描述
我有一个固定在屏幕底部的容器。
我希望容器“black-bg”根据其中的段落内容扩展和收缩(流体)。其上方的 div“图形”也应该相对于“black-bg” div 移动,而不是固定
目前“black-bg”和“graphic”是固定在同一个地方,无论段落内容是否变化都不会移动。
我也希望容器“black-bg”div底部对齐而不是顶部对齐在“my-container”div中,以便它位于顶部“options”div上
我的代码如下:
.my-container {
position: fixed;
bottom: 0;
left: 0;
width: 100%;
color: #fff;
text-align: center;
font-size: 1.37rem;
padding: 13px 0 0;
cursor: pointer;
z-index: 9999;
/* opacity: 0.1; */
min-height: 222px;
max-height: 752px;
}
.black-bg {
background-color: #000;
padding: 27px 23px 67px 90px;
z-index: 5;
top: -19px;
position: relative;
background: rgba(0, 0, 0, 0.9);
}
.options {
background-color: #b1151b;
position: absolute;
bottom: 0;
left: 0;
width: 100%;
color: #fff;
text-align: center;
font-size: 1.37rem;
padding: 0 13px;
cursor: pointer;
z-index: 30;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-ms-flex-direction: row;
flex-direction: row;
-ms-flex-wrap: nowrap;
flex-wrap: nowrap;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
}
.options a {
color: #fff;
text-decoration: none;
display: block;
}
.options>a.left-btn {
border-right: 1px solid #000;
padding-left: 85px;
}
.options>a.left-btn,
.options>a.right-btn {
width: 50%;
padding: 13px;
}
<div class="my-container">
<div class="graphic">
<div>Graphic will go here</div>
</div>
<div class="black-bg">
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam</p>
<h4>Duis aute irure dolor in reprehenderit</h4>
</div>
<div class="options">
<a href="#" class="left-btn">Yes</a>
<a href="#" class="right-btn">No</a>
</div>
</div>
解决方案
我不太清楚这是否是您想要的,但我认为您遇到的问题是您已应用于position: fixed
最外层的容器,因此您的整个内容都是固定的。
我认为只想修复页脚,而不是像这样的所有内容:
.footer {
position: fixed;
z-index: 9999;
bottom: 0;
left: 0;
width: 100%;
}
.container{
color: white;
width: 100%;
text-align: center;
font-size: 1.37rem;
padding: 13px 0 0;
cursor: pointer;
/* opacity: 0.1; */
min-height: 222px;
max-height: 752px;
}
.black-bg {
background-color: #000;
padding: 27px 23px 67px 90px;
z-index: 5;
top: -19px;
position: relative;
background: rgba(0, 0, 0, 0.9);
}
.options {
background-color: #b1151b;
position: absolute;
bottom: 0;
left: 0;
width: 100%;
color: #fff;
text-align: center;
font-size: 1.37rem;
padding: 0 13px;
cursor: pointer;
z-index: 30;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-ms-flex-direction: row;
flex-direction: row;
-ms-flex-wrap: nowrap;
flex-wrap: nowrap;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
}
.options a {
color: #fff;
text-decoration: none;
display: block;
}
.options>a.left-btn {
border-right: 1px solid #000;
padding-left: 85px;
}
.options>a.left-btn,
.options>a.right-btn {
width: 50%;
padding: 13px;
}
<div class="container">
<div class="graphic">
<div>Graphic will go here</div>
</div>
<div class="black-bg">
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam
iusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam
iusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam
</p>
<h4>Duis aute irure dolor in reprehenderit</h4>
</div>
</div>
<div class="footer">
<div class="options">
<a href="#" class="left-btn">Yes</a>
<a href="#" class="right-btn">No</a>
</div>
</div>
推荐阅读
- networking - PTP 1588 时间戳
- javascript - 使用ajax在文本区域外单击时如何保存文本区域数据
- reactjs - “xxx”类型缺少“ElementClass”类型的以下属性:context、setState、forceUpdate、props 和另外 2 个。TS2605
- c++ - protobuf arena 分配编译错误
- python - 无法在 pycharm 中安装软件包并且还使用命令提示符错误“找不到版本”
- c# - 在泛型方法中更新对象时出错
- java - 使用 Springboot org.apache.commons.logging 禁用 PDFBox 日志记录
- vue.js - 如何自定义 b-modal 中取消按钮的背景颜色?
- php - 如何在 phpword 中使用 setImageValue 为上传的图像设置高度和宽度?
- reactjs - Recharts 响应式容器未在笔记本电脑上呈现