简单聊一下DOCTYPE

简单聊一下DOCTYPE

5 年前 · 来自专栏 饥人谷学生博客(原小谷悠悠伴我行)

大家在学习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" " w3.org/TR/html4/strict. ">

2、过渡模式:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
" w3.org/TR/html4/loose.d ">

3、基于框架的 HTML 文档:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" " w3.org/TR/html4/framese ">


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介绍 - 依水间 - 博客园

发布于 2017-12-29 16:35

文章被以下专栏收录

    饥人谷学生博客(原小谷悠悠伴我行)

    饥人谷学生博客(原小谷悠悠伴我行)

    饥人谷小伙伴前进路上的点滴记录