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动画之流彩文字效果+图片模糊效果+边框伸展效果实现代码合集
Aug 18 HTML / CSS
CSS3截取字符串实例代码【推荐】
Jun 07 HTML / CSS
CSS3属性使网站设计增强同时不消弱可用性
Aug 29 HTML / CSS
CSS实现限制字数功能当对象内文本溢出时显示省略标记
Aug 20 HTML / CSS
css3和jquery实现的可折叠导航菜单适合放在手机网页的导航菜单
Sep 02 HTML / CSS
CSS3 文字动画效果
Nov 12 HTML / CSS
HTML5 Canvas API中drawImage()方法的使用实例
Mar 25 HTML / CSS
HTML5 常用语法一览(列举不支持的属性)
Jan 26 HTML / CSS
canvas学习和滤镜实现代码
Aug 22 HTML / CSS
CSS精灵图的原理与使用方法介绍
Mar 17 HTML / CSS
HTML中实现音乐或视频自动播放案例详解
May 30 HTML / CSS
CSS实现鼠标悬浮动画特效
May 07 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 各种应用乱码问题的解决方法
2010/05/09 PHP
php header示例代码(推荐)
2010/09/08 PHP
PHP函数rtrim()使用中的怪异现象分析
2017/02/24 PHP
Thinkphp 框架扩展之标签库驱动原理与用法分析
2020/04/23 PHP
学习YUI.Ext 第六天--关于树TreePanel(Part 1)
2007/03/10 Javascript
一个背景云变换js特效 鼠标移动背景云变化
2012/12/28 Javascript
javascript同页面多次调用弹出层具体实例代码
2013/08/16 Javascript
jQuery中:focus选择器用法实例
2014/12/30 Javascript
jquery操作select方法汇总
2015/02/05 Javascript
基于JavaScript实现百叶窗动画效果不只单纯flas可以实现
2016/02/29 Javascript
js获取元素的标签名实现方法
2016/10/08 Javascript
vue.js 1.x与2.0中js实时监听input值的变化
2017/03/15 Javascript
vue watch自动检测数据变化实时渲染的方法
2018/01/16 Javascript
使用validate.js实现表单数据提交前的验证方法
2018/09/04 Javascript
React+EggJs实现断点续传的示例代码
2020/07/07 Javascript
[20:30]职业巡回赛回顾
2018/08/09 DOTA
[01:20:30]OG vs LGD 2018国际邀请赛淘汰赛BO3 第四场 8.26
2018/08/30 DOTA
利用Python开发实现简单的记事本
2016/11/15 Python
分析Python中解析构建数据知识
2018/01/20 Python
基于scrapy的redis安装和配置方法
2018/06/13 Python
详解Django的model查询操作与查询性能优化
2018/10/16 Python
python利用requests库模拟post请求时json的使用教程
2018/12/07 Python
实例详解Python模块decimal
2019/06/26 Python
基于python实现微信好友数据分析(简单)
2020/02/16 Python
Python动态导入模块和反射机制详解
2020/02/18 Python
pygame实现飞机大战
2020/03/11 Python
Python如何截图保存的三种方法(小结)
2020/09/01 Python
Lenox官网:精美的瓷器&独特的礼品
2017/02/12 全球购物
Troy-Bilt官网:草坪割草机、吹雪机、分蘖机等
2019/02/19 全球购物
美国亚马逊旗下时尚女装网店:SHOPBOP(支持中文)
2020/10/17 全球购物
医院竞聘演讲稿
2014/05/16 职场文书
辞职信范文大全
2015/03/02 职场文书
2015年办公室文秘工作总结
2015/04/30 职场文书
2015中学教师个人工作总结
2015/07/22 职场文书
深入浅出讲解Java8函数式编程
2022/01/18 Java/Android
Vue OpenLayer 为地图绘制风场效果
2022/04/24 Vue.js