与HTML4相比,HTML5在语法上发生了很大的变化。本文将介绍HTML5语法的变化所在!
一、HTML5中标记的方法
首先,让我们来看一下在HTML5中的标记方法。
1、内容类型(ContentType)
首先,HTML5的文件扩展名与内容类型保持不变,也就是说,扩展名仍然是”.html"或".htm“,内容类型(ContentType)仍然为”text/html“。
2、DOCTYPE声明
DOCTYPE声明是HTML文件必不可少的,它位于文件第一行。在HTML4 中,它的声明方法如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
在HTML5中,刻意不使用一版本声明,一分文档将会适用于所有一种版本的HTML。HTML5中的DOCTYPE声明方法(不区分大小写)如下:
<!DOCTYPE html>
另外,当使用工具时,也可以在DOCTYPE声明方式中加入SYSTEM识别符,声明方法如下面的代码所示:
<!DOCTYPE html SYSTEM "about:legacy-compat">
在HTML5中,像这样的DOCTYPE声明方式是允许的(不区分大小写,引号不区分是单引号还是引号)。
3、指定字符编码
在HTML4中,使用meta元素的形式指定文件中的字符编码,如下所示:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
在HTML5中,可以使用对<meta>元素直接追加charset属性的方式来指定字符编码,如下所示:
<meta charset="utf-8">
两种方法都有效,可以继续使用前一种方式(通过content元素的属性来指定),但是不能同时混合使用两种方式。
二、HTML5确保了与之前HTML版本的兼容性
1、可以省略标记的元素
在HTML5中,元素的标记可以省略。具体来说,元素的标记为”不允许写结束标记“、”可以省略结束标记“和”开始标记和结束标记全部可以省略“三种类型。
不允许写结束标记的元素有:area、base、br、col、command、embed、hr、img、input、keygen、link、meta、param、source、track、wbr。
可以省略结束标记的元素有:li、dt、dd、p、pr、rt、rp、optgroup、option、colgroup、thead、tbody、tfoot、tr、td、th。
可以省略全部标记的元素有:html、head、body、colgroup、tbody。
2、具有boolean值的属性
对于具有boolean值的属性,例如readonly,当只写属性而不指定属性值时,表示属性值为true;如果想要将属性值设为false,可以不使用该属性。另外,要想将属性值设定为true时,也可以将属性名设定为属性值,或将空字符串设定为属性值。
如:
<!--只写属性不写属性值代表属性为true-->
<input type=checkbox checked>
<!--不写属性代表属性为false-->
<input type=checkbox>
<!--属性值=属性名,代表属性为true-->
<input type=checkbox checked=checked>
<!--属性值=空字符串,代表属性为true-->
<input type=checkbox checked>
3、省略引号
大家知道,指定属性值的时候,属性值两边可以用双引号,也可以用单引号。
HTML5在此基础上做了一些改进,当属性值不包括空字符串、"<"、">"、"="、单引号、双引号等字符时,属性值两边的引号可以省略。