页脚置底(Sticky footer)就是让网页的footer部分始终在浏览器窗口的底部。

当网页内容足够长以至超出浏览器可视高度时,页脚会随着内容被推到网页底部;

但如果网页内容不够长,置底的页脚就会保持在浏览器窗口底部。

方法一:将内容部分的margin-bottom设为负数

footer

html, body {

margin: 0;

padding: 0;

height: 100%;

}

.wrapper {

min-height: 100%;

margin-bottom: -50px; /* 等于footer的高度 */

}

.footer, .push {

height: 50px;

}

这个方法需要容器里有额外的占位元素(div.push)。

div.wrapper的margin-bottom需要和div.footer的-height值一样,注意是负height。

方法二:将页脚的margin-top设为负数

给内容外增加父元素,并让内容部分的padding-bottom与页脚的height相等。

footer

html, body {

margin: 0;

padding: 0;

height: 100%;

}

.content {

min-height: 100%;

}

.content-inside {

padding: 20px;

padding-bottom: 50px;

}

.footer {

height: 50px;

margin-top: -50px;

}

方法三:使用calc()设置内容高度

footer

.content {

min-height: calc(100vh - 70px);

}

.footer {

height: 50px;

}

这里假设div.content和div.footer之间有20px的间距,所以70px=50px+20px

方法四:使用flexbox弹性盒布局

以上三种方法的footer高度都是固定的,如果footer的内容太多则可能会破坏布局。

footer

html {

height: 100%;

}

body {

min-height: 100%;

display: flex;

flex-direction: column;

}

.content {

flex: 1;

}

方法五:使用Grid网格布局

footer

html {

height: 100%;

}

body {

min-height: 100%;

display: grid;

grid-template-rows: 1fr auto;

}

.footer {

grid-row-start: 2;

grid-row-end: 3;

}

footer.php置底,CSS五种方式实现Footer置底相关推荐

  1. CSS 五种方式实现 Footer 置底

    CSS 五种方式实现 Footer 置底 页脚置底(Sticky footer) 就是让网页的footer部分始终在浏览器窗口的底部. 当网页内容足够长以至超出浏览器可视高度时,页脚会随着内容被推到网 ...

  2. footer.php置底,详解CSS五种方式实现Footer置底

    页脚置底(Sticky footer)就是让网页的footer部分始终在浏览器窗口的底部. 当网页内容足够长以至超出浏览器可视高度时,页脚会随着内容被推到网页底部:但如果网页内容不够长,置底的页脚就会 ...

  3. CSS五种方式实现 Footer 置底

    页脚置底(Sticky footer)就是让网页的footer部分始终在浏览器窗口的底部.当网页内容足够长以至超出浏览器可视高度时,页脚会随着内容被推到网页底部:但如果网页内容不够长,置底的页脚就会保 ...

  4. 网页设计的css样式,网页设计引入CSS样式的五种方式_css

    一.使用STYLE属性 将STYLE属性直接加在个别的元件标签里,<元件(标签) STYLE="性质(属性)1: 设定值1; 性质(属性)2: 设定值2; -} 例如: <TD ...

  5. 详解 CSS position定位的五种方式

    position 属性规定应用于元素的定位方法的类型(static.relative.fixed.absolute 或 sticky). 常见的固定定位,例如手机端的导航,快捷按钮.例如本站的&quo ...

  6. Github项目解析(九)--实现Activity跳转动画的五种方式

    2019独角兽企业重金招聘Python工程师标准>>> 版权声明:本文为博主原创文章,未经博主允许不得转载. 转载请标明出处:一片枫叶的专栏 上一篇文章中我们讲解了在Activity ...

  7. 《div图层被鼠标划过时其背景色变色的五种方式》

    概述: 同样是为了提高用户体验程度,本篇内容将叙述:div图层被鼠标划过时其背景色改变,鼠标离开相关div图层时其颜色变为原来的颜色.实现上述效果下面总结了五种实现方式,请您耐心阅读,或许会有点收获. ...

  8. Android -- 基础篇 -- Activity跳转动画的五种方式(下)

    上一篇文章中我们讲解了在Activity启动过程中获取组件宽高的五种方式.在Activity的启动过程中如果我们直接在生命周期方法中通过view.getWidth()或者是view.getHeight ...

  9. python引入模块的五种方式与内置模块

    模块 自定义模块 模块的定义与分类 模块的定义 简而言之,模块就是一些常用功能的集合,我们把一些常用的函数.变量或者方法写到一个python文件中,那么这个python文件就是模块,使用模块可以避免我 ...

最新文章

  1. VC++创建个性的对话框之MFC篇
  2. 【Linux】【服务器】 CentOS7下安装MySQL详细过程步骤
  3. QML编程之旅 -- 事件处理
  4. Qt Creator构建并运行示例
  5. mysql fetch next from_MySql 存储过程 动态sql
  6. 斐波那契实现阶乘js_功能与命令式编程。 Java 8中的斐波那契,素数和阶乘
  7. 苹果系统上安装linux系统,Mac OS X下制作安装Linux系统的USB启动盘
  8. 题目:求100以内的全部素数,每行输出10个。1不是素数
  9. java bs和cs_BS与CS的区别和联系
  10. 光纤带光缆的特点及应用场景
  11. arduino最大电压_制作Arduino功率计测量电压电流及功耗
  12. VMware虚拟机如何全屏显示
  13. [软件更新]vidalia 0.2.0.32
  14. 京东手机评论分析(二):关键词提取
  15. DEDECMS织梦后台更新网站栏目无反应一键更新无响应的解决方法
  16. Airflow调度 Design
  17. 产业巨头布局移动互联网 惠普比联想棋高一筹
  18. 小芳同学的错题总结(十四)
  19. WinAPI执行外部程序和创建新进程:CreateProcess()的使用
  20. python正则表达式是什么意思_理解python正则表达式

热门文章

  1. Spring MVC源码——Root WebApplicationContext
  2. EntityManager的使用
  3. springmvc环境搭建以及常见问题解决
  4. 浏览器是指在用户计算机上,自考《网页设计与制作》测试题及答案
  5. caffe运行不停止_caffe(gpu)安装过程及问题解决
  6. python涉及到的逻辑_涉及逻辑运算的python表达式的运算顺序
  7. 北方人思想为什么落后_广西人为什么很少到北方打工?
  8. java日期函数精确到日,java日期时间函数分享
  9. Nginx(二):安装、配置、常用命令
  10. Mysql更改表名大小写不敏感