html footer 布局,详解CSS经典布局之Sticky footer布局

何为Sticky footer布局?

我们常见的网页布局方式一般分为header(页头)部分,content(内容区)部分和footer(页脚)部分。当页头区和内容区的内容较少时,页脚区不是随着内容区排布而是始终显示在屏幕的最下方。当内容区的内容较多时,页脚能随着文档流撑开始终显示在页面的最下方。这就是传说中的Sticky footer布局。是不是很容易理解。不理解的小伙伴也没关系下面我就举个简单的例子。

举个栗子

当内容较少时,正常的文档流显示如下图:

3585b2adf32ffdae6412cb6777331ff0.png

在正常文档流中,当内容较少时,页脚部分不会始终固定在屏幕的最下方。这时候就该让传说中的sitcky footer布局出现了。

sticky footer布局效果如下图所示:

a9ea3937b37bd791abcd72f7f9286a65.png

不管内容区有多少内容,页脚始终显示在屏幕的最下方,当内容区域超过屏幕的高度时。页脚会始终显示在页面的最底部。现在小伙伴们彻底认识sticky footer的真面目了吧,下面让我们一起看看它是如何实现的。

Sticky footer布局实现

负margin布局方式

html代码:

这里是头部

这里是main content区域...

这里是main content区域...

这里是main content区域...

这里是main content区域...

css代码:

div,h1,p{margin:0; padding: 0;}

.detail{

position:fixed;

overflow:auto;

width:100%;

height:100%;

}

.wrapper{

min-height:100%;

width:100%;

}

.title h1{

font-size:40px;

text-align: center;

}

.main{

margin-top:64px;

padding-bottom:64px;

}

.main p{

font-size: 25px;

text-align: center;

}

.footer{

margin:-64px auto 0 auto;

font-size:32px;

}

.footer p{

text-align: center;

}

.clearfix::after {

display: block;

content: ".";

height: 0;

clear: both;

visibility: hidden;

}

注:main里的 padding-bottom和footer里的负margin值要保持一致。

flex布局方式

html代码:

Site name

Bacon Ipsum dolor sit amet...

Bacon Ipsum dolor sit amet...

Bacon Ipsum dolor sit amet...

Bacon Ipsum dolor sit amet...

© 2017 No rights reserved.

Made with ♥ by an anonymous pastafarian.

css代码:

body{display: flex; flex-flow: column; min-height: 100vh; overflow:auto;}

h1{font-size: 60px; text-align: center;}

p{font-size: 24px; text-align: center;}

.main{flex:1;}

flex布局结构简单,代码精简。因为flex存在着兼容性,所以在使用这种方式布局时需要注意。

小结

到这里我们的本次探讨就结束了,希望对小伙伴们能有帮助。这也是我第一次记录博客,有不够完整的地方希望各位大佬多多包涵,给予指导。sticky footer布局也是css中比较经典的布局,对初学者来说应该熟悉掌握这种布局。当然用的多了自然也就会了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值