博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于<!DOCTYPE>标签
阅读量:5887 次
发布时间:2019-06-19

本文共 2208 字,大约阅读时间需要 7 分钟。

<!DOCTYPE>声明位于文档中最前面的位置,处在<html>标签之前。它的作用是告知浏览器文档使用哪种html或者xhtml规范。

<!DOCTYPE>可声明三种DTD(文档类型定义)类型,分别表示严格版本(Strict),过渡版本(Transitional)和基于框架(Frameset)的HTML版本。(如果文档中的标记不遵循DOCTYPE声明所指定的DTD类型的标准,这个文档除了不能通过代码校验之外,还有可能不能在浏览器中正确显示。)

 

<!DOCTYPE html

PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN”

“http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”>

在上面的声明中,声明了文档的根元素是html,它在公共标识符被定义为 

“-//W3C//DTD XHTML 1.0 Strict//EN”的DTD中进行了定义。由此,浏览器将明白如何寻找匹配此公共标识符的DTD。如果找不到,浏览器将使用公共标识符后面的URL(统一资源定位符UniformResourceLocator)作为寻找DTD的位置。

 

三种HTML文档类型

HTML 4.01规定了三种文档类型:Strict、Transitional以及Frameset。

 

HTML Strict DTD

如果需要干净的标记,免于表现层的混乱,请使用此类型。请与层叠样式表(CSS)配合使用。

<!DOCTYPE html PUBLIC “-//W3C//DTD HTML 4.01 //EN”

“http://www.w3.org/TR/html4/strict.dtd”>

HTML Transitional DTD

Transitional DTD可包含W3C所期望移入样式表的呈现属性和元素,如果用户使用了不支持层叠样式表的浏览器以至于你不得不使用HTML的呈现特性时,请使用此类型。

<!DOCTYPE html PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”

“http://www.w3.org/TR/html4/loose.dtd”>

Frameset DTD

Frameset DTD应当被用于带有框架的文档。除frameset元素取代了body之外,Frameset DTD等同于Transitional DTD。

<!DOCTYPE html PUBLIC “-//W3C//DTD HTML 4.01 Frameset//EN”

“http://www.w3.org/TR/html4/frameset.dtd”>

 

三种XML文档类型

XHTML 1.0(eXtendsible HyperText Markup Language,XHTML基于可扩展标记语言(XML))规定了三种XML文档类型:Strict、Transitional以及Frameset。

HTML Strict DTD

如果需要干净的标记,免于表现层的混乱,请使用此类型。请与层叠样式表(CSS)配合使用。

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN”

“http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”>

HTML Transitional DTD

Transitional DTD可包含W3C所期望移入样式表的呈现属性和元素,如果用户使用了不支持层叠样式表的浏览器以至于你不得不使用HTML的呈现特性时,请使用此类型。

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN”

“http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>

Frameset DTD

当你希望使用框架是,请使用此DTD。如需检查你是否编写了带有正确DTD的合法XHTML文档,可以把你的XHTML页面链接到一个XHTML验证器。

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Frameset//EN”

“http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd”>

 

选择正确的doctype:

为了获得正确的doctype声明,关键就是让文档所遵循的标准与DTD对应。

例如,假定doctype声明引用的是xhtml1-strict.dtd,那么文档中的所有标记就应该遵循所引用的DTD中的标准。比如在xhtml1-strict.dtd标准中,不能出现<applet>标签/。

如果没有指定有效的doctype声明,大多数浏览器都会使用一个内建的默认DTD。在这种情况下,浏览器会用内建的DTD来试着显示你所指定的标记。

也可以直接写成<!DOCTYPE html>,这样的话就会开启浏览器的标准兼容模式。

HTML 5直接用<!DOCTYPE html>。

转载于:https://www.cnblogs.com/wblzu/archive/2013/03/22/2974893.html

你可能感兴趣的文章
河南农业大学c语言平时作业答案,河南农业大学2004-2005学年第二学期《C语言程序设计》期末考试试卷(2份,有答案)...
查看>>
c语言打开alist文件,C语言 文件的打开与关闭详解及示例代码
查看>>
c语言 中的共用体和结构体如何联合定义,结构体(Struct)、联合体(Union)和位域
查看>>
SDL如何嵌入到QT中?!
查看>>
P1026 统计单词个数
查看>>
[js高手之路] html5 canvas系列教程 - 状态详解(save与restore)
查看>>
poi excel 常用api
查看>>
AD提高动态的方法(附SNR计算)
查看>>
[转]轻松实现可伸缩性,容错性,和负载平衡的大规模多人在线系统
查看>>
五 数组
查看>>
也谈跨域数据交互解决方案
查看>>
EntityFramework中使用Include可能带来的问题
查看>>
面试题28:字符串的排列
查看>>
css important
查看>>
WPF 实现窗体拖动
查看>>
NULL不是数值
查看>>
Oracle学习笔记之五,Oracle 11g的PL/SQL入门
查看>>
大叔手记(3):Windows Silverlight/Phone7/Mango开发学习系列教程
查看>>
考拉消息中心消息盒子处理重构(策略模式)
查看>>
so easy 前端实现多语言
查看>>