本文介绍底部footer元素如何始终粘在浏览器底部。当内容container足够多、可以撑开一屏的时候,底部footer紧跟在内容container后边;而内容container不够多、不足以撑开一屏到达浏览器底部时,底部footer仍然在浏览器底部。需求看下图:(原谅我用了简单粗暴的三原色 ̄□ ̄||)

注:文中所有关键代码写在了/* key code */里,背景色background-color为辅助调试代码,没有实质用途。

方法一

包裹元素wrapper设置负的margin-bottom等于底部footer高度,内容container后加一个空的占位元素blank。

html和body设置height为100%;用一个包裹元素wrapper包住除了底部footer之外的所有内容container,给包裹元素wrapper设置min-height为100%、设置负的margin-bottom等于底部footer的高度;内容container后加一个空的占位元素blank,高度和底部footer一样,防止底部footer盖住内容container。

HTML代码:

container

CSS代码:

html,

body {

/* key code */

height: 100%;

/* key code */

margin: 0;

text-align: center;

}

.wrapper {

/* key code */

min-height: 100%;

margin-bottom: -50px;

/* key code */

}

.container {

background-color: #ff0000;

}

.blank, .footer {

/* key code */

height: 50px;

/* key code */

}

.blank {

background-color: #0000ff;

}

.footer {

background-color: #ffff00;

}

方法二

内容container设置padding-bottom等于底部footer的高度,底部footer设置负的margin-top等于底部footer的高度。

html和body设置height为100%;用一个包裹元素wrapper包住除了底部footer之外的所有内容container,给包裹元素wrapper设置min-height为100%;内容container设置padding-bottom等于底部footer的高度;底部footer设置负的margin-top等于底部footer的高度。

HTML代码:

container
footer

CSS代码:

html,

body {

/* key code */

height: 100%;

/* key code */

margin: 0;

text-align: center;

}

.wrapper {

/* key code */

min-height: 100%;

/* key code */

}

.container {

/* key code */

padding-bottom: 50px;

/* key code */

background-color: #ff0000;

}

.footer {

/* key code */

height: 50px;

margin-top: -50px;

/* key code */

background-color: #ffff00;

}

方法三

使用flexbox布局。

html设置height为100%;body使用flexbox布局、设置min-heigint为100%;内容container设置flex为1,意在内容container分配body除去底部footer后的全部剩余空间。

HTML代码:

container
footer

CSS代码:

html,

body {

margin: 0;

text-align: center;

}

html {

/* key code */

height: 100%;

/* key code */

}

body {

/* key code */

min-height: 100%;

display: flex;

flex-direction: column;

/* key code */

}

.container {

/* key code */

flex: 1;

/* key code */

background-color: #ff0000;

}

.footer {

height: 50px;

background-color: #ffff00;

}

方法四

使用calc()计算内容container的最小高度。

html设置height为100%;使用calc()计算内容container的最小高度,设置内容container的min-height为(100vh - 底部footer的高度)。

HTML代码:

container
footer

CSS代码:

html,

body {

/* key code */

height: 100%;

/* key code */

margin: 0;

text-align: center;

}

.container {

/* key code */

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

/* key code */

background-color: #ff0000;

}

.footer {

/* key code */

height: 50px;

/* key code */

background-color: #ffff00;

}

方法三和方法四用到了CSS3的新属性,会有部分低版本浏览器不支持。

感谢阅读~

dvdf

footer属性css,CSS基础-footer元素始终粘在浏览器底部的四种方法相关推荐

  1. CSS粘住固定底部的5种方法

    本文主要介绍一个Footer元素如何粘住底部,使其无论内容多或者少,Footer元素始终紧靠在浏览器的底部.我们知道,当内容足够多可以撑开底部到达浏览器的底部,如果内容不够多,不足以撑开元素到达浏览器 ...

  2. html如何使图片紧靠下方,CSS粘住固定底部的5种方法

    本文主要介绍一个Footer元素如何粘住底部,使其无论内容多或者少,Footer元素始终紧靠在浏览器的底部.我们知道,当内容足够多可以撑开底部到达浏览器的底部,如果内容不够多,不足以撑开元素到达浏览器 ...

  3. 【Unity游戏开发教程】零基础带你从小白到超神16——四种方法控制人物移动之角色控制器

    角色控制器 控制人物移动的四种方式 直接修改组件位置 去资源商城下载角色控制系统成品 unity提供的角色控制器组件 Character Controller API 通过物理系统自己做 拓展 常用的 ...

  4. css固定底部的五种方法

    本文主要介绍一个Footer元素如何粘住底部,使其无论内容多或者少,Footer元素始终紧靠在浏览器的底部.我们知道,当内容足够多可以撑开底部到达浏览器的底部,如果内容不够多,不足以撑开元素到达浏览器 ...

  5. CSS粘住底部的5种方法

    CSS粘住底部的5种方法 文章目录 方法一:全局增加一个负值下边距等于底部高度 方法二:底部元素增加负值上边距 方法三:使用calc()计算内容的高度 方法四:使用flexbox 方法五:使用grid ...

  6. 双飞翼 html 布局,css实现双飞翼布局的四种方法(附代码)

    本篇文章给大家带来的内容是关于css实现双飞翼布局的四种方法(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 圣杯布局.双飞翼布局效果图 从效果图来看圣杯布局.双飞翼布局效果 ...

  7. [Web 前端] 018 css 清除浮动的四种方法

    清除浮动的四种方法 加 clear: ...(见例1) 父级上增加属性 overflow:hidden(见例2.1) 在最后一个子元素的后面加一个空的 div,给它一个样式属性 clear: both ...

  8. css中div居中显示的四种方法

    css中设置div元素居中显示的四种方法 一.先确定div的基本样式 二.具体实现方法 第一种:利用子绝父相和margin: auto实现 第二种:利用子绝父相和过渡动画tranform实现 第三种: ...

  9. css实现圆形的四种方法

    CSS在网页上生成一个圆形的四种方法 border-radius SVG clip-path radial-gradient # border-radius 是最简单的应用,并且得到了广泛的支持.该b ...

最新文章

  1. android 关于字符转化问题
  2. 利用Bash给Linux服务器增添色彩
  3. 亚马逊新品流量是上架开始算吗?
  4. 【深度学习】90.94%准确率!谷歌刷新ImageNet新纪录!Model soups:提高模型的准确性和稳健性...
  5. mysql提高缓存_合理配置MySQL缓存 提高缓存命中率
  6. 《Android群英传》读书笔记 (5) 第十一章 搭建云端服务器 + 第十二章 Android 5.X新特性详解 + 第十三章 Android实例提高...
  7. TensorFlow Lite学习笔记
  8. 无条件跳转页面的代码
  9. sql 账号查询一个表勾选那个权限_Spring Cloud微服务架构中的数据权限DataPermision实现方案...
  10. 如果有一个想法,你如何表述?
  11. 【博弈找规律问题汇总】
  12. JQuery Easyui/TopJUI表格基本的删除功能(删除当前行和多选删除)
  13. 基于《知网》的词汇语义相似度计算以及复现
  14. Oracle varchar2类型
  15. java 排班日历,排班日历
  16. 生成开端原著小说词云
  17. 「捷径」解读:iOS 自动化的 3.0 时代
  18. Eclipse下载不了,无法访问此网页,不要慌,2步解决问题5.20
  19. 【Python语音分析】从绘制好看的波形图和语谱图开始
  20. 电脑打印准考证图片显示不出来

热门文章

  1. Python C# 通信2种路子
  2. 程序员知识点及工具汇总
  3. python的rich终端显示
  4. MES系统正在重新定义数字化车间
  5. java 字节码详解_Java基础篇(JVM)——字节码详解
  6. Brit 日期参数添加控件
  7. 20232023年MBA/MPA/MEM联考考试大纲:提纲挈领,掌控全局
  8. 盖楼大作战 | 不是吧?不是吧?这么涨知识又好玩的地方你还不来?
  9. patindex不存在 mysql_mysql中取字符串中的数字的语句
  10. spring mvc前端页面中文乱码问题解决思路