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五个技巧给你的网站带来出色的效果
Apr 02 HTML / CSS
CSS3模块的目前的状况分析
Feb 24 HTML / CSS
css3.0新属性效果在ie下的解决方案
May 10 HTML / CSS
一款利用纯css3实现的win8加载动画的实例分析
Dec 11 HTML / CSS
详解利用css3的var()实现运行时改变scss的变量值
Mar 02 HTML / CSS
详解如何用canvas画一个微笑的表情
Mar 14 HTML / CSS
html5使用canvas绘制太阳系效果
Dec 15 HTML / CSS
HTML5实现页面切换激活的PageVisibility API使用初探
May 13 HTML / CSS
详解淘宝H5 sign加密算法
Aug 25 HTML / CSS
html css3不拉伸图片显示效果
Jun 07 HTML / CSS
HTML5 新增内容和 API详解
Nov 17 HTML / CSS
浅谈css实现背景颜色半透明的两种方法
Dec 06 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防止伪造的数据从URL提交方法
2014/06/27 PHP
php生成随机颜色方法汇总
2014/12/03 PHP
PHP连接MySQL数据的操作要点
2015/03/20 PHP
PHP购物车类Cart.class.php定义与用法示例
2016/07/20 PHP
详解PHP数据压缩、加解密(pack, unpack)
2016/12/17 PHP
PHP使用SWOOLE扩展实现定时同步 MySQL 数据
2017/04/09 PHP
Laravel 实现关系模型取出需要的字段
2019/10/10 PHP
jquery插件制作 表单验证实现代码
2012/08/17 Javascript
封装好的一个万能检测表单的方法
2015/01/21 Javascript
使用CoffeeScrip优美方式编写javascript代码
2015/10/28 Javascript
有关JavaScript中call()和apply() 的一些理解
2016/05/20 Javascript
图文详解JavaScript的原型对象及原型链
2016/08/02 Javascript
微信小程序 删除项目工程实现步骤
2016/11/10 Javascript
mockjs+vue页面直接展示数据的方法
2018/12/19 Javascript
WebGL学习教程之Three.js学习笔记(第一篇)
2019/04/25 Javascript
vue实现多级菜单效果
2019/10/19 Javascript
微信小程序批量上传图片到七牛(推荐)
2019/12/19 Javascript
vue将文件/图片批量打包下载zip的教程
2020/10/21 Javascript
python检测远程端口是否打开的方法
2015/03/14 Python
深入理解Python中各种方法的运作原理
2015/06/15 Python
Python urls.py的三种配置写法实例详解
2017/04/28 Python
python3+PyQt5+Qt Designer实现扩展对话框
2018/04/20 Python
Python实现的微信好友数据分析功能示例
2018/06/21 Python
详谈Python 窗体(tkinter)表格数据(Treeview)
2018/10/11 Python
python列表,字典,元组简单用法示例
2019/07/11 Python
Python获取当前脚本文件夹(Script)的绝对路径方法代码
2019/08/27 Python
Python 获取命令行参数内容及参数个数的实例
2019/12/20 Python
python制作一个简单的gui 数据库查询界面
2020/11/19 Python
python中封包建立过程实例
2021/02/18 Python
英文版网络工程师求职信
2013/10/28 职场文书
高中生家长会演讲稿
2014/01/14 职场文书
大学生饮食连锁店创业计划书
2014/01/17 职场文书
广播体操比赛口号
2014/06/10 职场文书
学校食堂管理制度
2015/08/04 职场文书
看完这篇文章获得一些java if优化技巧
2021/07/15 Java/Android
MySQL优化及索引解析
2022/03/17 MySQL