web前端开发的点点滴滴---2.HTML的DOCTYPE

来源:互联网 发布:淘宝网天天特价女棉衣 编辑:程序博客网 时间:2024/03/29 08:41

HTML的DOCTYPE

HTML的DOCTYPE声明非常重要,可以避免不必要的BUG,请在每个页面声明DOCTYPE

在没有定义DOCTYPE的页面,浏览器会根据自身的设置或自认为合适的方式去渲染页面,所以每个浏览器的呈现效果都不一样,兼容性极差。

定义了DOCTYPE的页面后,浏览器会根据W3C定义的标准对HTML执行渲染,兼容性将大大的改善。



以下部分引用至w3school:


<DOCTYPE> 声明必须是 HTML 文档的第一行,位于 <html> 标签之前。

<!DOCTYPE> 声明不是 HTML 标签;它是指示 web 浏览器关于页面使用哪个 HTML 版本进行编写的指令。
在 HTML 4.01 中,<!DOCTYPE> 声明引用 DTD,因为 HTML 4.01 基于 SGML。DTD 规定了标记语言的规则,这样浏览器才能正确地呈现内容。
HTML5 不基于 SGML,所以不需要引用 DTD。
提示:请始终向 HTML 文档添加 <!DOCTYPE> 声明,这样浏览器才能获知文档类型。


DOCTYPE类型

1.HTML 5

HTML5只有一种DOCTYPE,如下所示,HTML5向后兼容。他的概念是加载所有能加载的标签,不在有版本的概念,所以这里面只有这么一小句。

<!DOCTYPE html>

2.HTML 4.01 Strict

HTML4.01的严格模式,在此模式下不能使用展示性的和弃用的元素(比如 font),不允许框架集(Framesets),代码如下:

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


3.HTML 4.01 Transitional

HTML4.01的过度模式,可以使用所有HTML标签,最常用的HTML版本,不允许框架集(Framesets),代码如下:

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


4.HTML 4.01 Frameset

HTML4.01与Transitional一样但是可以使用框架集,常用于框架集的首页,代码如下:

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



5.XHTML 1.0 Strict
此DTD与HTML 4.01 Strict一样,但是必须能通过XML校验。


5.XHTML 1.0 Strict
此DTD等同于XHTML 1.0 Strict,并且可以使用框架。

0 0