gpt4 book ai didi

HTML、CSS 粘性页脚(不断增长的内容)

转载 作者:技术小花猫 更新时间:2023-10-29 12:11:12 26 4
gpt4 key购买 nike

我试图在具有动态高度(增加内容)的 div 底部获得一个粘性页脚。 div 需要 float 在页面中间(左右距离相同)。

我有以下 HTML(去除了不相关的内容):

<html>
<body>
<div class="bodybackground">
<div class="container"><!-- floats in the middle -->
<div class="mainContainer"><!-- different color etc -->
<!-- content with dynamic height -->
</div>
<footer class="pagefooter"></footer>
</div>
</div>
</body>
</html>

和下面的 CSS(也去掉了不相关的东西):

html {
height: 100%;
margin: 0px;
padding: 0px;
}
body {
margin: 0px;
height: 100%;
}
.bodybackground {
height: 100%;
min-height: 100%;
}

.container {
min-height: 100%;
display: inline-block; /* needed make it float in the middle of body */
top: 0px;
position: relative;
padding: 0px;
padding-bottom: 158px; /* height of footer */
}
.mainContainer {
position: absolute;
height: 100%;
overflow: auto;
}
.pagefooter {
position: absolute;
bottom: 0px;
margin: 0px;
padding: 0px;
height: 158px;
}

但是 mainContainer 的内容会浮出并继续在页脚后面 - 而不是页脚位于最底部。我已经尝试了几乎所有我能找到的东西,除了强制我更改容器的显示属性的示例,因为我需要它来保持它 float 在中间。

关于我在哪里是个白痴的任何线索?谢谢!!


我需要对 .push 进行更多调整,但这解决了问题!感谢您的快速回答!

最佳答案

通过使用绝对值,footer 和 mainContainer 将受制于您放置它们的位置。如果你使用 absolute 并将页脚设置到底部,它只会粘在视口(viewport)的底部。

对于粘性,您应该在需要时使用相对单位和正确的高度。

html, body { width:100%; height:100%; }
#wrap {
min-height:100%;
height:auto !important;
height:100%;
margin: 0 auto -158px; /* Bottom value must = footer height */
}

.pagefooter, .push { width:100%; height:158px; position:relative; bottom:0; }

按顺序走

 <div id="wrap">
<!--All of your content goes here-->
<div class="push"></div>
</div>
<div class="pagefooter"></div>

那样,页脚总是有足够的空间并设置在底部。 margin:auto inside wrap 将使 wrap 居中(只要它不是 width:100%,它将在没有 inline 的情况下居中)

关于HTML、CSS 粘性页脚(不断增长的内容),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15076201/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com