css让底部永远在页面最底部显示

2018-02-08

让底部永远显示在页面最底部需要考虑两种情况:

一种是当页面内容高度大于浏览器窗口高度时,这时底部会正常的显示在页面最底部;

另一种是当页面内容高度小于浏览器窗口高度时,这时底部会漂到浏览器窗口中间位置;

这通常不是我们想要的结果,这时我们希望底部内容显示在浏览器窗口的底部:

怎么实现这种效果呢?

我们需要用到css新增加的vh单位和box-sizing这个属性

具体的做法是:

用一个外包元素将页面内容包起来,像这样:

<div class="wrapper">
   <div class="demo">正文内容</div>
   <div class="footer">底部内容</div>
</div>

给他设置css样式如下:

.wrapper{
   position:relative;
   min-height:100vh;
   padding-bottom:120px;    //将padding-bottom大小设置为底部内容的高度
   box-sizing:border-box;
}

最后将底部用绝对定位,定位在底部,底部css的示例:

.footer{
   position:absolute;
   left:0;
   bottom:0;
   width:100%;
   height:120px;
}

需要注意的是,底部的高度height和外包元素的padding-bottom参数必须一致

PREV
伪静态规则大全
NEXT
css公共文件结构