html粘性页脚的具体使用


Posted in HTML / CSS onJanuary 18, 2022

本学期在软件设计大作业时要实现一个粘性页脚功能,即不管页面内容怎么变,页脚始终要滑到页面的最下方才能出现。

本次作业采用bootstrap框架

网上方法

1、html标签

将html显示高度占满(class=“h-100”)。

<html lang="en" class="h-100">

2、body标签
设置body弹性布局,并将高度占满(class=“d-flex flex-column h-100”)。

<body class="d-flex flex-column h-100">

3、main标签

将main设置为不同的屏幕设备不设置收缩(role=“main” class=“flex-shrink-0”)。

<main role="main" class="flex-shrink-0">

弹性收缩规则:

  • flex-shrink-0 不同的屏幕设备不设置收缩
  • flex-shrink-1 不同的屏幕设备设置收缩

4、footer标签

设置footer顶部边框高度自动设置(class=“mt-auto”)。

<footer class="footer mt-auto py-3">

但我试了一下在我这都不能实现预期的效果。

解决方法

可通过判断$(window)和$(document)的关系来为footer添加"fixed-bottom"class
$(window).height()代表了当前可见区域的大小,
$(document).height()则代表了整个文档的高度,可视具体情况使用.
可根据它们两个之间的关系来决定是否添加改class。
页脚如下所示:

<footer class="mt-auto py-3 bg-dark" id="footer">
    <div class="container">
        <p class="m-0 text-center text-muted">Copyright &copy; Blog 2021</p>
    </div>
</footer>

动态添加"fixed-bottom"class

if($(window).height() == $(document).height()){
        $("#footer").addClass("fixed-bottom");
   }else{
         $("#footer").removeClass("fixed-bottom");
   }

注意:如果 $(window).height() 获取的不是窗口的高度而是文档文本高度,也就是 (window).height()(document).height返回值一样。那就是因为DOCTYPE没写造成的。

请检查html标签,改成,就OK了。

为此专门查了一下的作用:

DOCTYPE是document type(文档类型)的简写,在web设计中用来说明你用的XHTML或者HTML是什么版本。其中的DTD叫文档类型定义,里面包含了文档的规则,浏览器就根据你定义的DTD来解释你页面的标识,并展现出来。特别是没有声明或声明不正确将在标准浏览器下更是不能正常显示。

要建立符合标准的网页,DOCTYPE声明是必不可少的关键组成部分;除非你的XHTML确定了一个正确的DOCTYPE,否则你的标识和CSS都不会生效。

网页中用了 <!DOCTYPE html> 就表示该页面采用了W3C标准,这样做可以增强页面的兼容性,降低对浏览器的依赖性。

不加这一行,就表示页面采用浏览器本身的解析标准,这样会造成页面在不同的浏览器(IE、火狐等)可能出现不同的显示效果。

也许这个解释能说明一定的原因。 定义DOCTYPE是个好习惯,也希望大家能写出标准规范的代码!

到此这篇关于html粘性页脚的具体使用的文章就介绍到这了,更多相关html粘性页脚内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

 
HTML / CSS 相关文章推荐
css3模拟jq点击事件的实例代码
Jul 06 HTML / CSS
CSS3教程(8):CSS3透明度指南
Apr 02 HTML / CSS
CSS实现的一闪而过的图片闪光效果
Apr 23 HTML / CSS
用CSS3实现背景渐变的方法
Jul 14 HTML / CSS
纯CSS3实现运行时钟的示例代码
Jan 25 HTML / CSS
HTML5 Web Database 数据库的SQL语句的使用方法
Dec 09 HTML / CSS
HTML5实现的图片无限加载的瀑布流效果另带边框圆角阴影
Mar 07 HTML / CSS
HTML5中判断横屏竖屏的方法(移动端)
Aug 04 HTML / CSS
详解android与HTML混合开发总结
Jun 06 HTML / CSS
详解使用postMessage解决iframe跨域通信问题
Nov 01 HTML / CSS
AmazeUI 图标的示例代码
Aug 13 HTML / CSS
AmazeUI 导航条的实现示例
Aug 14 HTML / CSS
CSS三大特性继承性、层叠性和优先级详解
Jan 18 #HTML / CSS
使用CSS设置滚动条样式
在CSS中使用when/else的方法
Jan 18 #HTML / CSS
CSS使用伪类控制边框长度的方法
浅谈css实现背景颜色半透明的两种方法
Dec 06 #HTML / CSS
HTML怎么设置下划线?html文字加下划线方法
Dec 06 #HTML / CSS
使用 CSS 轻松实现一些高频出现的奇形怪状按钮
You might like
总结PHP删除字符串最后一个字符的三种方法
2016/08/30 PHP
thinkphp分页实现效果
2016/10/13 PHP
PHP数据对象映射模式实例分析
2019/03/29 PHP
Laravel5.5 动态切换多语言的操作方式
2019/10/25 PHP
使用jquery实现图文切换效果另加特效
2013/01/20 Javascript
js浏览器本地存储store.js介绍及应用
2014/05/13 Javascript
浅谈jquery回调函数callback的使用
2015/01/30 Javascript
基于JavaScript实现全屏透明遮罩div层锁屏效果
2016/01/26 Javascript
仿百度换肤功能的简单实例代码
2016/07/11 Javascript
JS实现发送短信验证后按钮倒计时功能(防止刷新倒计时失效)
2017/07/07 Javascript
extjs简介_动力节点Java学院整理
2017/07/17 Javascript
JavaScript编程设计模式之观察者模式(Observer Pattern)实例详解
2017/10/25 Javascript
Rollup处理并打包JS文件项目实例代码
2018/05/31 Javascript
JS常见构造模式实例对比分析
2018/08/27 Javascript
深入解析koa之异步回调处理
2019/06/17 Javascript
OpenLayers3实现对地图的基本操作
2020/09/28 Javascript
python通过邮件服务器端口发送邮件的方法
2015/04/30 Python
使用Python写CUDA程序的方法
2017/03/27 Python
初学python的操作难点总结(新手必看篇)
2017/08/03 Python
python数字图像处理之高级滤波代码详解
2017/11/23 Python
Python设计模式之代理模式简单示例
2018/01/09 Python
Python PyAutoGUI模块控制鼠标和键盘实现自动化任务详解
2018/09/04 Python
Python自动化运维之Ansible定义主机与组规则操作详解
2019/06/13 Python
python交易记录链的实现过程详解
2019/07/03 Python
Django框架配置mysql数据库实现过程
2020/04/22 Python
pytorch cuda上tensor的定义 以及减少cpu的操作详解
2020/06/23 Python
健康监测猫砂:Pretty Litter
2017/05/25 全球购物
美国隐形眼镜网:Major Lens
2018/02/09 全球购物
山海经纬软件测试笔试题和面试题
2013/04/02 面试题
学生学习总结的自我评价
2013/10/22 职场文书
校园餐饮创业计划书
2014/01/10 职场文书
总经理司机岗位职责
2014/02/06 职场文书
会计求职信
2014/05/29 职场文书
事业单位聘任报告
2015/03/02 职场文书
MySQL查看表和清空表的常用命令总结
2021/05/26 MySQL
Spring Security使用单点登录的权限功能
2022/04/03 Java/Android