大家好,这里是笑颜の行方。
本篇描述的是HTML5中的第一个标签,!DOCTYPE html。
说到HTML5,这是近些年来出现的网页标准。
规定了很多新特性,让我们这些码农不得不感叹时代的变化,真的是越来越快了啊。
在编写H5标准的网页中,有个让我很在意的标签。
<!DOCTYPE html>
<!-- 就是第一个标签 <!DOCTYPE html> -->
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
</body>
</html>
这个标签是H5标准的特有声明。
为什么是个单标签?
如果去掉前面的感叹号会怎样?
嗯,我们来试验一下。
我们在一个html文件中写入如下代码(H5的基本模板),去掉第一个标签的感叹号。
<DOCTYPE html>
<!-- 这里去掉了感叹号。 -->
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
</body>
</html>
保存,加载。
加载完成时,页面除了一片空白之外没有其他异样。
嗯?真的没有吗?
那按下 F12 键看看。
果然,出了点问题。
出现了doctype标签,还是小写。
因为html这种语言对大小写不敏感,所以会认为失去了感叹号的DCOTYPE,
是个写错了地方的标签。
页面加载时,浏览器会把DOCTYPE放入html标签中,并添加相应的结尾标签。
此时,页面最顶部的标签是 元素始祖——html标签。
这些本应出现在head标签中的内容,
产生错误的DOCTYPE标签,把这些内容带入body中。
虽然H5支持语义化标签,可出现这样的错误,理解起来还是很难的。
所以呢,为了符合新时代的页面,
DOCTYPE html前面还是需要感叹号来维持规范的。