页面内容不足以铺满屏幕高度时,footer居底显示
Posted _chuck
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了页面内容不足以铺满屏幕高度时,footer居底显示相关的知识,希望对你有一定的参考价值。
在项目中常常会遇到这样的问题:页面主要内容不足以铺满一个屏幕的高度,footer下面就会有白块剩余。
现在要实现的效果就是,在主要内容不足以铺满整个屏幕的情况下,footer居于屏幕低部显示,使得整个页面占满屏幕。而当主要内容高度大于整个屏幕高度的时候,footer跟随主要内容进行显示;
方法一:
- <div class="page">
- 主要页面
- </div>
- <footer>底部</footer>
- html,body{
- height: 100%;
- margin: 0;
- padding: 0;
- }
- .page{
- box-sizing: border-box;/*为元素指定的任何内边距和边框都将在已设定的宽度和高度内进行绘制*/
- min-height: 100%;
- padding-bottom: 300px;
- }
- footer{
- height: 300px;
- margin-top: -300px;
- opacity: 0.5;
- }
优点:简洁明了,没有冗余的div盒子;
缺点:box-sizing:border-box的兼容问题,ie7以下包括ie7不支持;
方法二:
html
- <div class="page-container">
- <div class="page-main">
- 主要页面
- </div>
- <footer>底部</footer>
- </div>
- html,body{
- height: 100%;
- margin: 0;
- padding: 0;
- }
- .page-container{
- position: relative;
- min-height: 100%;
- }
- .page-main{
- padding-bottom: 300px;
- }
- footer{
- position: absolute;
- left: 0;
- bottom: 0;
- height: 300px;
- }
优点:兼容性比较好,ie6放弃治疗;
缺点:套了两层div;
上面两种方法都只针对底部高度固定的情况,不能解决底部高度不固定的情况,一般情况下,网站的底部都是放一些友情链接之类的东西,如果你的项目要求这些友情链接是后台可配置的,数量不固定,导致底部高度不固定呢?好吧,除了用js来动态获取高度然后设置底部高度以外,还有什么用css就直接解决的好的方法么?
以上是关于页面内容不足以铺满屏幕高度时,footer居底显示的主要内容,如果未能解决你的问题,请参考以下文章