一、什么是DOCTYPE
DOCTYPE是Document Type(文档类型)的简写,在页面中,用来指定页面所使用的XHTML(或者HTML)的版本。要想制作符合标准的页面,一个必不可少的关键组成部分就是DOCTYPE声明。只有确定了一个正确的DOCTYPE,XHTML里的标识和CSS才能正常生效。
二、选择什么样的DOCTYP
XHTML 1.0中有3种DTD(文档类型定义)声明可以选择:过渡的(Transitional)、严格的(Strict)和框架的(Frameset)。
分别介绍如下:
1.过渡的
一种要求不很严格的DTD,允许在页面中使用HTML4.01的标识(符合xhtml语法标准)。过渡的DTD的写法如下:
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2.严格的
一种要求严格的DTD,不允许使用任何表现层的标识和属性。严格的DTD的写法如下:
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3.框架的
一种专门针对框架页面所使用的DTD,当页面中含有框架元素时,就要采用这种DTD。框架的DTD的写法如下:
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
三、需要注意的问题
没什么特别的,就是一定要将DOCTYPE声明放在XHTML文档的顶部,上面哪怕多个HTML注释标记都不行。
最好示例代码也加上DOCTYPE,否则效果会有差异。
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 所期望移入样式表的呈现属性和元素。如果您的读者使用了不支持层叠样式表(CSS)的浏览器以至于您不得不使用 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"
文档类型DOCTYPE,大多数 DOCTYPE 声明触发的是almost strict mode(准标准模式),删除了 DOCTYPE 时,以哪种“渲染模式”展示您html页面的权利就完全交给了浏览器
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
html5既然不能删除,那我我来简化它
<!DOCTYPE html >
不推荐在 DOCTYPE 之前加入任何非空白内容。HTML元素就是页面里所有元素的根
<html xmlns="http://www.w3.org/1999/xhtml"lang="en"xml:lang="en">
xmlns属性。它的意思是:在这个页面上的元素位于XHTML命名空间http://www.w3.org/1999/xhtml之中。但是HTML 5的元素都是具有这个命名空间的,因此不必再写明了。不管有没有这个属性,HTML 5页面在所有浏览器中将会有一致的表现。而在HTML 5只有lang属性有效
<html lang="en">
head元素是根元素的第一个元素,它里面的信息是网页本身的信息,而不是网页的本体。(主体在body里) 藏在head里都是好东西特别是对于做seoer来说。 meta
标签的作用就是知名所用的字符的编码,不指定编码可能会导致安全漏洞
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
h5已经把它简化成
<meta charset="utf-8" />
链接关系则提供了一种方式以解释为什么链接到那个页面 。这里我们首先来来说rel="stylesheet"
<link rel="stylesheet" type="text/css" href="style.css" />
h5已经可以直接简化写成以下方式
<link rel="stylesheet" href="style.css" /> <script src="script.js"></script>