这个问题在这里已有答案:
我试图让我的页脚(只有一个带有一行文本的div)位于屏幕的底部,如果内容不是一直到底部,或者是在内容的底部,如果内容需要滚动条 . 如果内容不需要滚动条,则它可以很好地工作,但是当内容太长时,页脚仍然位于同一位置,位于内容的顶部 .
我的基本div结构是:
<div id="container">
<div id="body"></div>
<div id="footer"></div>
</div>
我相应的CSS(有点剥离):
body {
margin: 0;
padding: 0;
height: 100%;
}
html {
margin: 0;
padding: 0;
height: 100%;
}
#container {
width: 674px;
min-height: 100%;
height: 100%;
position: relative;
margin: 0 auto;
}
#body {
width: 616px;
padding: 5px 14px 5px 14px;
margin: 0 auto;
padding-bottom: 20px;
}
#footer {
position: absolute;
bottom: 0;
width: 644px;
height: 20px;
margin: 0 auto;
}
10 回答
最简单的解决方案是在
<html>
标签上使用min-height
,并使用position:absolute;
定位<footer>
Demo :jsfiddle和SO片段:
为什么不使用:
{ position: fixed; bottom: 0 }
?A simple solution that i use, works from IE8+
在html上给出min-height:100%,这样如果内容少了,那么页面底部会占据完整的视口高度和页脚 . 当内容增加时,页脚会随着内容向下移动并保持坚持到底 .
JS小提琴演奏演示:http://jsfiddle.net/3L3h64qo/2/
Css
Html
使用jQuery将内部代码放在
<head></head>
标签上使用这个 . 它会解决它 .
这应该对你有帮助 .
假设您的页脚结束,最简单的方法是将
min-height
设置为400px的页面容器 . 您甚至不必为页脚添加CSS或只是width:100%
假设您的页脚是您的直接孩子<body>
使用min-height作为某个像素值,而不是% . 喜欢:min-height:620px;高度:自动;
和页脚:
这里分享的模型非常类似于Ryan Fait的StickyFooter http://ryanfait.com/sticky-footer
到目前为止,在这个讨论中只缺少一个div(Kenneth Palanganas在这里提出的模型在本地Win81设计中工作了大约48小时,然后在ie / chrome因未知原因崩溃) . Ryan的“推”div将满足一些不情愿的浏览器 . 注意,px是常见的,但是,对于液体布局一致性,em可能是优选的 .
我想分享一下我如何使用在页面加载时调用的Javascript函数来解决我的问题 . 当页面内容的高度小于屏幕的高度时,该解决方案将页脚定位在屏幕的底部 .
希望有所帮助 .