
严格模式、混杂模式与怪异模式
发布日期:2021-05-07 19:33:00
浏览次数:9
分类:技术文章
本文共 1092 字,大约阅读时间需要 3 分钟。
Doctype作用?严格模式、混杂模式和怪异模式如何区分?它们有何意义?
由于历史的原因,不同浏览器对页面的渲染是不同的,甚至同一浏览器的不同版本也是不同的。在W3C标准出台之前,不同的浏览器在页面的渲染上没有同一的规范,产生了差异,即Quirks mode(怪异模式或兼容模式);当W3C标准出台之后,不同浏览器对页面的渲染有了统一的标准,即Strict mode(标准模式或严格模式);这就是两者之间的区别。
W3C标准推出前,旧的页面都是根据旧的渲染方式对页面进行渲染的,因此在W3C标准推出后为了保证旧页面的正常显示,保持浏览器的兼容性,这样浏览器上就产生了能够兼容W3C标准渲染的严格模式和保证旧页面显示的怪异模式的标准兼容模式。
如果XHTML文档包含形式完整的DOCTYPE,那么它一般以标准模式呈现。对于HTML 4.01文档,包含严格DTD的DOCTYPE常常导致页面以标准模式呈现。包含过渡DTD和URI的DOCTYPE也导致页面以标准模式呈现,但是有过渡DTD而没有URI会导致页面以混杂模式呈现。DOCTYPE不存在或形式不正确会导致HTML和XHTML文档以混杂模式呈现。
1、doctype的作用:
声明位于文档 的最前面,告知浏览器的解析器,用什么文档类型、规范来解析这个文档。
注意:
1).规范是指W3C发布的文档类型定义(DTD)中的规则。
2).三种DTD类型:严格、过渡和基于框架的HTML版本。2、严格模式、混杂模式和怪异模式的区分
1)严格模式:严格模式的排版和JS运作模式是以该浏览器支持的最高标准运行。
2)混杂模式:混杂模式的页面以宽松的向后兼容的方式显示;模拟老的浏览器的行为以防止站点无法工作。
3)怪异模式:怪异模式则是使用浏览器自己的方式来解析执行代码。
3、它们的意义
Dcotype不存在或者不正确会导致文档以混杂模式呈现。
js判断是哪种模式
1.作用:表明当前文档的渲染模式是还是"标准模式"
2.语法:
mode = document.compatMode
值:
- 如果文档处于“混杂模式”,则该属性值为
"BackCompat"
- 如果文档处于“标准模式”或者“准标准模式(almost standards mode)”,则该属性为
"CSS1Compat"
例子1:
if (document.compatMode == "BackCompat") { // 渲染模式为混杂模式}else if(document.compatMode == "CSS1Compat"){ //渲染模式为标准模式}
实际应用
发表评论
最新留言
不错!
[***.144.177.141]2025年04月06日 12时03分04秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
泳道图简介
2019-03-04
Tomcat6中web项目部署路径webapps和wtpwebapps的区别
2019-03-04
Java判断字符串是否为金额
2019-03-04
skyfans之每天一个Liunx命令系列之二:uptime
2019-03-04
Kubernetes十三--Pod定义文件内容详解
2019-03-04
普歌- LRF-(简单易懂)笔记本电脑USB接口案例 接口多态(向下转型)
2019-03-04
Java中如何构建树结构
2019-03-04
解决vue部署到nginx后刷新404
2019-03-04
解决eclipse字体背景变红或者变绿的问题
2019-03-04
扫雷小游戏——简单易懂
2019-03-04
软件架构-zookeeper快速入门
2019-03-04
「初级篇」跟我一起学docker(四)--容器的基本操作
2019-03-04
22 岁毕业做程序员的「普通」人,50 岁时的人生轨迹是怎样的?
2019-03-04
scala上界与下界、协变与逆变
2019-03-04
java稀疏数组
2019-03-04
全球数字货币加快研发
2019-03-04
数字化助力金融科技,实现产业良性循环
2019-03-04
2020-11-23(彻底理解KMP)
2019-03-04
常用的IDC函数
2019-03-04
angr学习笔记(7)(malloc地址单元符号化)
2019-03-04