浏览器的标准模式、怪异模式

2023-11-06

历史原因

在W3C标准未确定之前,各浏览器对于HTML和CSS有各自不同的解析方式,很多旧网页都是在W3C标准未确定时期实现、设计的。在W3C标准确定之后,浏览器为了保证对非标准的旧网页设计的后向兼容性。现代浏览器(IE6以上,IE6以下版本永远定在了怪异模式)一般都有两种渲染模式:标准模式和怪异模式。

在标准模式下,浏览器按照W3C标准对文档进行解析和渲染;而在怪异模式下,浏览器则按照非标准的实现方式对文档进行解析和渲染。这样的话,对于旧有的网页,浏览器启动怪异模式,就能够使得旧网页正常显示。

简单来说

标准模式:浏览器按照W3C标准解析执行代码;

怪异模式:浏览器根据自己向后兼容的方式解析执行代码;

获取当前模式

在控制台输入 document.compatMode 就可以知道当前的模式。

在这里插入图片描述
BackCompat:怪异模式

CSS1Compat:标准模式

开启怪异模式

没有指定dtd将会开启浏览器的怪异模式,这种说法是错的!正确的说法应该是没有定义doctype才会开启怪异模式。

  • 在标准化之前写的页面是没有doctype的,因此没有doctype的页面是在怪异模式下渲染的。
  • 如果web开发人员加入的doctype,大部分的doctype会开启标准模式,页面也会按照标准来渲染。

标准模式与怪异模式区别

盒模型宽高:

  • 在怪异模式下,盒模型为怪异盒模型 ,宽高包含padding和border;

  • 在标准模式下,盒模型为标准盒子模型,宽高为内容宽高不包含padding和border;

图片垂直对齐方式

  • 对于行内元素和table-cell元素,标准模式下vertical-align属性默认值是baseline;

  • 在怪异模式下,table单元格中的图片的vertical-align属性默认值是bottom,因此在图片底部会有几像素的空间;

元素中的字体

  • css中font的属性都是可以继承的;
  • 怪异模式下,对于table元素,字体的某些元素不能从其他封装元素继承中得到,特别是font-size属性

内联元素的尺寸

  • 标准模式下,non-replaced inline元素无法自定义大写;
  • 怪异模式下,定义元素的宽高会影响元素的尺寸;

元素的百分比高度

  • 当一个元素使用百分比高度时,在标准模式下,高度取决于内容变化;
  • 在怪异迷失下,百分比被准确应用;

元素溢出的处理

  • 标准模式下,overflow取值默认值为visible;
  • 在怪异模式下,这个溢出会被当做扩展box对待,就是元素的大小由内容决定,溢出不会裁剪,元素框自动调整,包含溢出内容;

总结

个人学习总结,谢谢大家观看!

如有问题欢迎各位指正

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

浏览器的标准模式、怪异模式 的相关文章

随机推荐

  • java怎么校验字符串为正数或者两位小数

    可以使用正则表达式来校验字符串是否为正数或两位小数 下面是一个例子 public static boolean isPositiveNumberOrTwoDecimalPlaces String str String pattern 0 9
  • 通过端口 1433 连接到主机 localhost 的 TCP/IP 连接失败“常见问题的解决方案

    问题 服务器突然显示连接失败 通过端口 1433 连接到主机 localhost 的 TCP IP 连接失败 错误 Connection refused connect 请验证连接属性 并检查 SQL Server 的实例正在主机上运行 且
  • Kubernetes 基本概念

    Kubernetes 是什么 Kubernetes 是一个可移植 可扩展的开源平台 用于管理容器化的工作负载和服务 可促进声明式配 置和自动化 是谷歌保密了十几年的秘密武器Borg的开源版本 谷歌一直通过Borg系统管理着数量庞大 的应用程
  • 2023华为OD机试备考攻略 以及题库目录分值说明 考点说明

    刷题库 刷题库 刷题库 重要的事情说三遍 要刷有多种语言的实现的题库 一种语言看不懂可以换另一种语言 而且可以结合起来去重 类似下面这种的题库 华为OD机试备考攻略 以及题库目录分值说明 考点说明 blog csdn net banxia
  • copy of an AVPacket structure

    a copy of an AVPacket structure 参考 https stackoverflow com questions 12929330 create a copy of an avpacket structure ok
  • 回调函数的作用详解

    回调函数的作用 原文地址 回调函数的作用 加菲的日志 网易博客 一直不太理解回调函数的作用 下面是找到的一些关于回调函数的作用的解答 1 回调函数是一个很有用 也很重要的概念 当发生某种事件时 系统或其他函数将会自动调用你定义的一段函数 2
  • STM32的DMA输出DAC的正弦波与三角波 幅度与周期可调可调(原创篇);

    废话不多说 因为激光振镜驱动需要正弦波与三角波 为了省事 直接通过STM32F407实现DAC的DMA输出 省CPU资源 经过调试 在0 NkHZ之内都可以实现 目前采样点为500个 上数据吧 其中三角波自动生成500个数据 在初始化的时候
  • 自己的Anaconda管理多个虚拟环境,这样就可以在不同的环境下安装互不干扰的库

    项目场景 Anaconda可以安装多个虚拟解释器 每个解释器可以安装自己独有的库 从而每个解释器之间起到互不干扰的作用 这点Anaconda就非常强大了 查看Anaconda的解释环境 在电脑开始中选择Anaconda Prompt set
  • 搭建一个vue3+ts项目(超祥/必看)

    一 创建vite项目 1 在一个文件夹下通过cmd打开 输入命令 npm create vite latest 2 接着选择ts 3 创建好之后 结构目录如下 二 启动vite项目 1 安装依赖 启动项目前需要先 npm i 从上图可以发现
  • C++智能指针知识总结

    智能指针 智能指针是为了避免内存泄漏的技术 智能指针采用了RAII特性 利用对象生命周期来控制程序资源 在对象构造时获取资源 接着控制对资源的访问使之在对象的生命周期内始终保持有效 最后在对象析构的时候释放资源 借此 我们实际上把管理一份资
  • Python 四五事

    介绍 Python 相关工具 工作流程和测试框架 最后更新 2014 1 19 引言 接续着之前的文章 虽然隔得比较久 本文继续介绍以 Windows 平台为背景的 Python 开发相关的工具 希望能对你有所帮助 另外很多东西本文都是延续
  • html+css+javascript知识点总结

    一 html css 基础 1 1 Html 和 CSS 的关系 学习 web 前端开发基础技术需要掌握 HTML CSS JavaScript 语言 下面我们就来了解下这三门技术都是用来实现什么的 1 HTML 是网页内容的载体 内容就是
  • 14.12 修改职工信息

    14 12 修改职工信息 1 按照编号修改职工信息 先声明 修改职工 void mod Emp 再实现 就是把查到的职工删除 再在那个位置输入一个新职工 所以跟添加职工的代码很多地方一样 修改职工 void WorkerManager mo
  • Koordinator 异构资源/任务调度实践

    前言 Koordinator 是阿里云基于过去我们建设的统一调度系统中积累的技术和实践经验 对外开源了新一代的调度系统 Koordinator 支持 Kubernetes 上多种工作负载的混部调度 它的目标是提高工作负载的运行时效率和可靠性
  • 从入门到放弃系列--如何成为全栈工程师04

    之前的3节课 我告诉了你基础的html div css布局 你应该已经了解网页是怎么制作的 在开从第5节课开始 我会用一个完整的实例 带你制作快速制作一个企业网站 这节课 我要把让你明白 当你在浏览器里输入一个网址 网页是怎么出现的 以及
  • 数据分析与数据挖掘的区别

    数据分析 数据分析是用适当的统计方法对收集的数据进行分析 概括 总结 对数据进行恰当的描述 提取有用的信息 数据挖掘 数据挖掘是从海量的数据中通过算法发现隐藏在数据中的规律和知识的过程 区别 1 数据分析数据量可大可小 数据挖掘需要从海量数
  • 重磅:门头沟赔偿推迟5个月,没有无缘无故的大涨!

    Mt Gox善后受托人向东京地方法院提出寻求延长善后计划提交期限的动议 2019年10月25日 东京地方法院发布一项命令 允许延长期限到2020年3月31日提交善后计划 编译 白夜 编辑 秦晋 碳链价值最新获悉 Mt Gox发布声明表示 由
  • Python3中Pillow(PIL)介绍

    PIL全称为Python Imaging Library 是Python中的免费开源图像处理库 PIL的最新版本为1 1 7 于2009年9月发布 支持Python的最高版本到2 7 原始的PIL开发于2011年停止 随后 一个名为Pill
  • vue前端实现模糊查询然后表格自动定位

    element input自动补全输入框 el table 注 这个table没有做分页 数据又多 所以才在前端添加搜索定位功能 html 自动补全输入框 和 table
  • 浏览器的标准模式、怪异模式

    历史原因 在W3C标准未确定之前 各浏览器对于HTML和CSS有各自不同的解析方式 很多旧网页都是在W3C标准未确定时期实现 设计的 在W3C标准确定之后 浏览器为了保证对非标准的旧网页设计的后向兼容性 现代浏览器 IE6以上 IE6以下版