`
nirvana1988
  • 浏览: 136278 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

关于浏览器渲染html页面采用的三种文本模式

 
阅读更多

     在开启这个话题前,先看一行代码。

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

     想必做web开发的朋友都很熟悉这段代码,它一般位于html页面的头部,它是指定了 浏览器在解释Html代码时所采用的渲染规范(如html各元素的显示位置及大小等)。

     这个渲染规范由w3c给出,然后各浏览器根据这个渲染规范 去解释html代码,最终呈现给大家丰富多彩的页面效果。

 

     通常w3c会给出多组Doctype规范,开发人员可自由地选取一个Doctype规范,让浏览器根据这个规范去渲染页面。但在同一个Doctype规范下,不同浏览器也会采用不同的文本模式对html页面进行渲染。

     而浏览器采用的文本模式的不同,最终影响到了html页面的显示效果。

 

     现在来说说文本模式。文本模式共有 诡异模式Quirks mode ,也有翻译为兼容模式、怪异模式的)、标准模式Standards mode )和几乎标准模式Almost standards mode )三种。

    上面我们提到Doctype规范决定了浏览器将会采用哪种文本模式去渲染html页面。如果当我们不指定Doctype时,IE6、IE7会采用诡异模式渲染页面,IE8以标准模式渲染页面(IE9下没测试),ff11也是以标准模式渲染页面。当我们采用了w3c所提供的某一个Doctype规范时,可参照下面的表格以了解浏览器将会以何种文本模式渲染html页面。

       通过查看上面的表格数据,w3c提供了一个不带DTD规范的Doctype,即<!Doctype html>,IE8以上的IE版本及其他主流浏览器,在这个Doctype下 均会采用标准模式对html页面进行渲染。

      由于HTML5不基于 SGML,它不需要在Doctype中引用DTD规范,因此<!Doctype html>被大量使用在了html页面中,让浏览器按照它们应该的方式来运行。

 

      如何获取当前浏览器以何种文本模式渲染的html页面呢? 可通过js获取document.compatMode的值来获取当前浏览器所采用的文本模式,该值一般有两个BackCompat(代表诡异文本模式)、CSS1Compat(代表标准文本模式)。

 

 

 

 

   

 

分享到:
评论

相关推荐

    工程硕士学位论文 基于Android+HTML5的移动Web项目高效开发探究

    GCF 谷歌内嵌浏览器框架, 使用此插件,用户可以通过Internet Explorer的用户界面,以Chrome内核的渲染方式浏览网页。Chrome Frame 会把最新版的Chrome Webkit 内核和JavaScript 引擎注入到IE中, IE浏览器将获得...

    geodndmap:在地图上放置 GeoJSON 文件或选定的文本以进行渲染

    然后使用浏览器(推荐使用 Chrome)打开文件index.html ,将 GeoJSON 文件或选定的文本拖放到地图上,然后查看它的呈现情况。 例如,您可以选择并拖动下面的多边形定义: { " type " : " Polygon " , " ...

    HTML开发王

    1.2 网页、浏览器、网站和网络服务器 1.2.1 网页和浏览器 1.2.2 不可不知的浏览器发展史 1.2.3 浏览网页 1.2.4 网站和网络服务器 1.3 了解html语言 1.3.1 关于html和html编辑器 1.3.2 创建第一个网页 1.3.3 查看网页...

    php-latex:用PHP编写的LaTeX解析器和渲染器

    您也可以将LaTeX代码呈现为HTML,但是有一个限制-在浏览器中,仅以文本模式呈现HTML,数学模式需要由JavaScript库处理。 为此,我建议使用 。 安装 要使用php-latex,您可以像安装其他任何php软件包一样使用。 ...

    Css样式文档.xlsx

    这些文档包含了一系列样式规则,告诉浏览器如何渲染页面的各个部分。以下是关于CSS样式文档的详细描述: 样式规则: CSS样式文档由一系列样式规则组成。每条规则由一个选择器和一组声明构成。选择器用于选择要应用...

    Markdown工具中文.7z

     2、snabbdom 作为 Mark Text 的渲染引擎,保证了极速渲染编辑页面,带来流畅的书写体验。  3、支持 CommonMark Spec 和 GitHub Flavored Markdown Spec 语法格式,生成的 Markdown 可以复制到任何支持 markdown ...

    GoodProject Maven Webapp.zip

    前端页面使用的jsp(Java服务端网页(一种建立动态网页的技术,Java Server Page)) JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它 是由Sun Microsystems公司倡导、许多...

    创建列实验室ONL01-SENG-FT-090820

    创建列实验室 问题陈述 网站通常会采用“基于列”的布局方案来直观地传递内容。 为这种布局编写HTML和CSS可以用许多不同的方式完成,但是遵循一些简单...通过在浏览器中打开index.html来检查我们已经渲染的内容 在css/s

    creating-columns-lab-v-000

    创建列实验室 问题陈述 网站通常会采用“基于列”的布局方案来直观地传递内容。 为这种布局编写HTML和CSS可以用许多不同的方式完成,但是遵循一些简单的模式可以...通过在浏览器中打开index.html来检查我们已经渲染的内

    精通AngularJS part1

    使用基于文本的输入(text、textarea、e—mail、URL、number)143 使用checkbox输入144 使用radio输入145 使用select输入145 提供简单的字符串options145 利用ngOptions指令提供动态options146 select指令与空...

    ComponentOne Studio For ActiveX 2010 Vol1 cracked

    您可以对图片、嵌入的RTF字符串进行渲染并导出到RTF或HTML中。 您甚至还可以在您的应用程序中增加所见即所得的预览,提供无级缩放、缩略图及页面的并排预览。 用户可完全控制缩放和页面的方向。 ComponentOne ...

    JAVA上百实例源码以及开源项目源代码

     关于数字签名:产生RSA密钥对(myKeyPair),得到RSA密钥对,产生Signature对象,对用私钥对信息(info)签名,用指定算法产生签名对象,用私钥初始化签名对象,将待签名的数据传送给签名对象(须在初始化之后),用公钥...

    ComponentOneStudio_2013v1.part04.rar

    您可以对图片、嵌入的RTF字符串进行渲染并导出到RTF或HTML中。 您甚至还可以在您的应用程序中增加所见即所得的预览,提供无级缩放、缩略图及页面的并排预览。 用户可完全控制缩放和页面的方向。 ComponentOne ...

    ComponentOneStudio_2013v1.part03.rar

    您可以对图片、嵌入的RTF字符串进行渲染并导出到RTF或HTML中。 您甚至还可以在您的应用程序中增加所见即所得的预览,提供无级缩放、缩略图及页面的并排预览。 用户可完全控制缩放和页面的方向。 ComponentOne ...

    ComponentOneStudio_2013v1.part07.rar

    您可以对图片、嵌入的RTF字符串进行渲染并导出到RTF或HTML中。 您甚至还可以在您的应用程序中增加所见即所得的预览,提供无级缩放、缩略图及页面的并排预览。 用户可完全控制缩放和页面的方向。 ComponentOne ...

    ComponentOneStudio_2013v1.part06.rar

    您可以对图片、嵌入的RTF字符串进行渲染并导出到RTF或HTML中。 您甚至还可以在您的应用程序中增加所见即所得的预览,提供无级缩放、缩略图及页面的并排预览。 用户可完全控制缩放和页面的方向。 ComponentOne ...

    ComponentOneStudio_2013v1.part01.rar

    您可以对图片、嵌入的RTF字符串进行渲染并导出到RTF或HTML中。 您甚至还可以在您的应用程序中增加所见即所得的预览,提供无级缩放、缩略图及页面的并排预览。 用户可完全控制缩放和页面的方向。 ComponentOne ...

    ComponentOneStudio_2013v1.part05.rar

    您可以对图片、嵌入的RTF字符串进行渲染并导出到RTF或HTML中。 您甚至还可以在您的应用程序中增加所见即所得的预览,提供无级缩放、缩略图及页面的并排预览。 用户可完全控制缩放和页面的方向。 ComponentOne ...

    ComponentOneStudio_2013v1.part02.rar

    您可以对图片、嵌入的RTF字符串进行渲染并导出到RTF或HTML中。 您甚至还可以在您的应用程序中增加所见即所得的预览,提供无级缩放、缩略图及页面的并排预览。 用户可完全控制缩放和页面的方向。 ComponentOne ...

Global site tag (gtag.js) - Google Analytics