简单聊一下DOCTYPE
大家在学习HTML的时候,是不是也发现了在HTML文档的最上边第一句语句都是<!DOCTYPE HTML>。那小伙伴们有没有想过,<!DOCTYPE HTML>标签是什么意思,干什么用的呢?我是前端小白,所以理解的也不是很深入,所以还请大家见谅与指正,哈哈~
<!DOCTYPE HTML>是什么?
它是html5标准网页声明,全称为Document Type HyperText Mark-up Language。
<!DOCTYPE HTML>声明应该放在HTML文档最前面的位置。在<html>标签之前,告诉浏览器解析器应该使用什么样的文档类型来解析文档。
另外在说一下:
在 HTML 4.01 中,<!DOCTYPE> 声明引用 DTD,因为 HTML 4.01 基于 SGML。DTD 规定了标记语言的规则,这样浏览器才能正确地呈现内容。在 HTML 4.01 中有三种 <!DOCTYPE> 声明:
1、严格模式:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" " http://www. w3.org/TR/html4/strict. dtd ">
2、过渡模式:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"
http://www.
w3.org/TR/html4/loose.d
td
">
3、基于框架的 HTML 文档:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" " http://www. w3.org/TR/html4/framese t.dtd ">
HTML5 不基于 SGML,所以不需要引用 DTD。在 HTML5 中只有一种:
<!DOCTYPE html>
还是HTML5的声明简单好记。
<!DOCTYPE HTML>的作用是什么?
作用:声明文档的解析类型(document.compatMode),避免浏览器的怪异模式。
document.compatMode(用来判断当前浏览器采用的渲染方式):
BackCompat:怪异模式,浏览器使用自己的怪异模式解析渲染页面。
CSS1Compat:标准模式,浏览器使用W3C的标准解析渲染页面。
如果你的文档中没有添加<!DOCTYPE HTML>声明,那么浏览器就会默认使用怪异模式解析渲染页面。而且不同的浏览器都使用自己的默认渲染模式,显示出来的页面样式也会不同,这样就很头痛了~
所以我们需要在文档中加上<!DOCTYPE HTML>声明,这样浏览器就会开启标准模式,乖乖的按照W3C的标准来解析渲染页面啦,我们的页面在不同的浏览器里面也就显示一样的页面效果啦~
这就是<!DOCTYPE HTML>的作用~~~
要注意哦:
* 一定要在 HTML 文档添加 <!DOCTYPE> 声明,这样浏览器才能获知文档类型。
* <!DOCTYPE> 声明必须是 HTML 文档的第一行,位于 <html> 标签之前。
* <!DOCTYPE> 声明对大小写不敏感的
* <!DOCTYPE> 声明没有结束标签
想要了解document.compatMode---
document.compatMode介绍 - 依水间 - 博客园