doctype 的各种声明

每个web开发者都清楚在写html时需要定义文档类型,文档类型定义错误或者是没有定义,浏览器在渲染时会出发怪异模式。下面是W3c标准中规定的几种文档类型的定义方法:

 

HTML 5

1
<!doctype html>

这是html5的文档定义方法,这种定义方法可以使所有浏览器都按严格模式来渲染。

 

HTML 4.01 严格模式

1
<!doctype html public "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

这个DTD废除了如下标签<applet>,<basefont>,<dir>,<dir>,<font>,<iframe>,<menu>,<noframes>,<s>,<strike>,<u>(不包括html5新增标签)

 

HTML 4.01 过度模式

1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

这个DTD包含所有html标签,除了<frameset>,<frame>以及html5新增标签

 

HTML 4.01 框架模式

1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"  "http://www.w3.org/TR/html4/frameset.dtd">

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

 

XHTML 1.0 严格模式

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

 

XHTML 1.0 过度模式

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

 

XHTML1.0框架模式

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

 

XHTML 1.1

1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

 

总结:

严格模式(strict)不包括样式性标签,如:<font>,<s>等

过度模式(transitional)包含所有标签,除了<frameset>,<frame>之外

框架模式(frameset)和过度模式(transitional)相同,但是允许使用框架集的内容,即标签<frameset>,<frame>

 

文章出自前端小窝

posted @ 2014-03-27 11:24  华生_  阅读(199)  评论(0编辑  收藏  举报