<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!DOCTYPE> 声明位于文档中的最前面的位置,处于 <html> 标签之前。DOCTYPE是Document Type(文档类型)的简写,此标签用来告知浏览器文档使用哪种 HTML 或 XHTML 规范。
Eg:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
上例声明了文档的根元素是 html,DOCTYPE在公共标识符被定义为 "-//W3C//DTD XHTML 1.0 Strict//EN"的 DTD(文档类型定义) 中进行了定义。浏览器将寻找匹配此公共标识符的 DTD并根据该DTD来对页面代码解释。如果找不到该定义文档,浏览器将使用公共标识符后面的 URL 来作为寻找 DTD 的地址。
DOCTYPE可声明三种 DTD 类型:严格版本(Strict)、过渡版本(Transitional )以及框架版本(Frameset)。
Eg:HTML 4.01 、XHTML 1.0
Strict DTD
干净、免于表现层混乱、与层叠样式表(CSS)配合使用:
HTML 4.01 :<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "
http://www.w3.org/TR/html4/strict.dtd">
XHTML 1.0:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
Transitional DTD
包含 W3C 所期望移入样式表的呈现属性和元素,如果使用了不支持层叠样式表(CSS)的浏览器以至于不得不使用 HTML /XHTML的呈现特性时,使用该类型。对于一般开发者而言,若对页面没有特殊的要求且想保持兼容性,使用该类型足以。
HTML 4.01 :<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd">
XHTML 1.0:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Frameset DTD
用于带有框架的文档。(HTML 4.01 中除 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 html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
HTML5基本上没有XHTML 1.0 Transitional严格的要求,并且简化了很多东西可以直接使用 <!DOCTYPE HTML>
HTML5 :<!DOCTYPE HTML>