关于HTML文档的文档模式

时间:2022-09-23 00:17:39

HTML文档的文档模式包括混杂模式和标准模式,这两种模式主要影响CSS内容的呈现,但在某些情况下也会影响到JavaScript的解释执行。

  如果在文档开始处没有发现文档类型声明,则所有浏览器都会默认开启混杂模式。但采用混杂模式不是什么值得推荐的做法,因为不同浏览器在这种模式下的行为差异非常大,如果不使用某些hack技术,跨浏览器的行为根本就没有一致性可言。

  我们都知道标准模式,在很多时候,准标准模式(过渡型和框架集型)和标准模式(严格型)都被称为标准模式。那么问题来了,什么是混合模式? 

  混杂模式

  为了搞明白什么是混杂模式,特意多搜索了几篇文章,这些文章中给到的混杂模式的解释如下:

  在标准模式中,浏览器根据规范呈现页面;在混杂模式中,浏览器按照自己的方式来解析代码,页面以一种比较宽松的向后兼容的方式显示,就严格度上来说不如严格模式。混杂模式通常模拟老式浏览器(比如Microsoft IE 4和Netscape Navigator 4)的行为以防止老站点无法工作。

也就是说,混杂模式是为了能在不知道采用什么模式的情况下,以一种最保险的方式:模拟老式浏览器去呈现网页。但为什么都不建议使用混杂模式呢?很可惜,没查到太多信息,只查到一篇文章讲到标准模式和混杂模式在盒模型及一些属性上有区别,后面深入学习到了再来篇日记做记录吧。

  那如何区分标准模式和混合模式呢?以下有四种情况区分:

  • 如果文档中包含了严格的DOCTYPE,那浏览器会按照标准模式呈现;
  • 如果文档中包含了过渡的或者框架集的DTD和URI的DOCTYPE,那浏览器也会按照标准模式呈现;
  • 如果DOCTYPE不存在或者缺少URI等,文档会以混杂模式呈现;
  • HTML5没有DTD,语法相对比较宽松,没有标准模式和混杂模式的区分。HTML5文档的开头要有<!DOCTYPE html>,其实也算是它的标准模式。  

  在搜索到的博客文章中,大部分介绍了两种模式,同时还提到了模式触发。但刚开始学习JS,真心好多不懂,但看了看,模式触发大致就是浏览器会以什么模式呈现文档,暂且不论了,后续接着学习。

关于HTML文档的文档模式的更多相关文章

  1. 把 MWeb Lite 的文档库文档和数据搬到 MWeb 正式版中

    MWeb Lite 版的文档库中的文档要搬到 MWeb 正式版中,如果 Lite 版的文档中没有图片或者只有少量图片,可以用导入导出为 Markdown 的方法. 否则的话请用以下方式(注意下面这个方 ...

  2. 使用C&num;动态生成Word文档&sol;Excel文档的程序测试通过后,部署到IIS服务器上,不能正常使用的问题解决方案

    使用C#动态生成Word文档/Excel文档的程序功能调试.测试通过后,部署到服务器上,不能正常使用的问题解决方案: 原因: 可能asp.net程序或iis访问excel组件时权限不够(Ps:Syst ...

  3. 返回当前文档的文档的url

    HTML DOM referrer 属性 HTML DOM Document 对象 定义和用法 referrer 属性可返回载入当前文档的文档的 URL. 语法 document.referrer 说 ...

  4. 创建MFC应用程序的类型:单文档&plus;多文档&plus;基于对话框

    单文档支持文档视图架构.数据的保存--(读取--改动)文档类功能--显示(视图类功能),比較方便. 基于对话框,主窗体是对话框类型.能够方便的使用控件,所见即所得的编程,比較方便. 单文档类似&quo ...

  5. 解决Spring的java项目打包后执行出现&OpenCurlyDoubleQuote;无法读取方案文档&period;&period;&period;&OpenCurlyDoubleQuote;、&OpenCurlyDoubleQuote;原因为 1&rpar; 无法找到文档&semi; 2&rpar; 无法读取文档&semi; 3&rpar; 文档的根元素不是&period;&period;&period;”问题

    问题 一个用Spring建的java项目,在Eclipse或idea中运行正常,为什么打包后运行出现如下错误呢? 2019/07/10/19:04:07 WARN [main] org.springf ...

  6. MongoDB 大数据技术之mongodb中在嵌套子文档的文档上面建立索引

    一.给collection objectid赋自定义的值 MongoDB Enterprise > db.testid.insert({_id:{imsi:"4567890123&qu ...

  7. SharePoint 开发另存文档库中文档

    前言 最近碰到这样一个问题,用前端框架读取SharePoint文档库中文档的时候,如果是PDF/TXT等类型的文档,不会出现另存为的操作,而是在浏览器中在线打开,这样用户是无法接受的. 解决方法 通过 ...

  8. 懒得写文档&comma;swagger文档导出来不香吗

    导航 前言 离线文档 1 保存为html 2 导出成pdf文档 3 导出成Word文档 参考 前言   早前笔者曾经写过一篇文章<研发团队,请管好你的API文档>.团队协作中,开发文档的重 ...

  9. Doctype 文档类型,标准模式,混杂模式

    HTML4.01和XHTML1.0 基于 SGML,支持DTD声明,HTML5不是,但是需要 doctype 来规范浏览器的行为. 标准模式是指,DTD声明定义了标准文档的类型后,浏览器按W3C标准解 ...

随机推荐

  1. &lbrack;LeetCode&rsqb; Valid Sudoku 验证数独

    Determine if a Sudoku is valid, according to: Sudoku Puzzles - The Rules. The Sudoku board could be ...

  2. Eclipse主题设置

    1. 内部编辑区域主题 Eclipse黑色主题包 下载主题包解压到Eclipse安装目录下的dropins目录,重启Eclipse,Windows—>Preferences—>Genera ...

  3. VS2010 express中改变VC Default include&sol;lib&sol;… 目录

    转自: Liz's Blog http://www.cnblogs.com/lizmy/archive/2012/01/10/2318258.html 2010中是以工程为单位,更改VC++ dire ...

  4. EF学习笔记(十) 处理并发

    总目录:ASP.NET MVC5 及 EF6 学习笔记 - (目录整理) 上一篇:EF学习笔记(九):异步处理和存储过程 本篇原文链接:Handling Concurrency Concurrency ...

  5. javascript接口注释法

    //注释法//简单,功能弱 利用 大型的项目靠得是规范和标准 有充分时间 缺点:人为的遵守/** interface personDao{* function add(obj);* function ...

  6. 【SpringCloud微服务实战学习系列】客户端负载均衡Spring Cloud Ribbon

    Spring Cloud Ribbon是一个基于HTTP和TCP的客户端负载均衡工具,它基于Netflix Ribbon实现.通过Spring Cloud的封装,可以让我们轻松地将面向服务的RES模板 ...

  7. css易错点总结

    传智老师说:找工作要问调不调IE6,同样的工作待遇,如果不用调IE6开12000工资,要调IE6,直接加价到15000,因为调IE6能累死人,气死人. 行高要在字体后面,如下: 正确:font:400 ...

  8. FortiGate基本信息

    1.介绍 FortiGate是全新的下一代防火墙,在整个硬件架构和系统上面都有新的设计,在性能和功能上面都有了很大提升,具有性能高.接口丰富.功能齐全.安全路由交换一体化.性价比高等优势. Forti ...

  9. yum install mysql56

    官方有写: http://dev.mysql.com/doc/mysql-repo-excerpt/5.6/en/linux-installation-yum-repo.html yum update ...

  10. 《TCP&sol;IP具体解释卷2:实现》笔记--IP:网际协议

    本章介绍IP分组的结构和主要的IP处理过程,包含输入,转发和输出. 下图显示了IP层常见的组织形式. 在之前的文章中.我们看到了网络接口怎样把到达的IP分组放到IP输入队列ipintrq中去,并怎样调 ...