我的问题是我有一个带页脚的网页。如果内容不足以填满整个页面,我希望页面将页脚扩展到浏览器窗口的底部。当内容超出浏览器的高度并且有一个垂直滚动条时,我还希望页脚转到页面的最底部。
出于某种原因,我无法使用此功能,我按照此页面上的教程进行操作:http://matthewjamestaylor.com/blog/keeping-footers-at-the-bottom-of-the-page
并且教程明确说它做了我想要的 - “在包含大量内容的长页面上,页脚会从可见页面推到最底部。就像普通网站一样,当你一直向下滚动时它会进入视图。这意味着页脚并不总是在珍贵的阅读空间。“
当我按照教程时,当没有足够的内容填充页面时,它成功地将页脚放在页面底部,但是当内容足够多时,页脚会过早地放置在浏览器窗口最初结束的位置,因为主体和所有容器的高度都设置为窗口的高度,而不是整个页面的高度(带有滚动的页面高度)。
div组织如下:<div class="everything">
<div class="main_content"></div>
<div class="template_footer"></div>
</div>
我的CSS代码:
html, body {
margin:0;
padding:0;
height:100%;
}
.everything{ //main container
width:100%;
min-width:960px;
max-width:1450px;
margin-left:auto;
margin-right:auto;
min-height:100%;
position:relative;
}
.main_content{ //body container
width:100%;
position:relative;
float:left;
}
.template_footer{
width:100%;
height:44px;
background-color:rgba(0, 0, 0, .5);
position:absolute;
bottom:0;
}
我也尝试了一系列不同的高度变化,没有任何工作正常,我已经搜索了其他问题,他们似乎没有具体回答这个问题。
答案 0 :(得分:0)
页脚绝对位于.everything
容器的底部。
因此,无论内容如何,页脚都将覆盖容器的底部44个像素。
答案 1 :(得分:0)
html {
margin: 0;
padding: 0;
height: 100%;
}
body {
min-height: 100%;
position: relative;
}
.main {
padding-bottom: 60px;
}
.footer {
position: absolute;
text-align: center;
bottom: 0;
width: 100%;
height: 60px;
}
主要部分的底部填充区域应大于页脚的高度。页脚部分必须为绝对位置。整个页面的最小高度应为100%。