从HTML4.01到HTML5并不是一种革命性的升级,而是一种规范向习惯的妥协,因此HTML5并不会带给开发者过多的冲击,过渡到HTML5是非常轻松的。另一方面,也增加了很多实用的新功能。
比如HTML5的语法变化。这些变化的最大特征就是:HTML5更宽容了!HTML5
规范的设计初衷就是最大程度的箭筒互联网上随处可见的不规范页面。
归纳起来,HTML5存在以下几点句法变化:
1、 标签不再区分大小写
例:<p>这是一段文字</P>
结束的P标签是大写的,但是这符合HTML5的书写规范。
2、 元素可以省略结束标签
HTML5十分宽容,允许部分HTML5元素省略结束标签,甚至允许HTML5元素同时省略开始标签和结束标签。具体来说HTML5中的省略标签可以分为以下三种:
(1) 空元素语法标签:area、base、br、col、command、embed、hr、img、input、keygen、link、mata、param、source、wbr。
(2) 可以省略结束标签的元素:colgroup、dt、dd、li、optgroup、option、p、rt、rp、thead、tbody、tfoot、tr、td、th。
例如:<p>这是一段文字
以上代码只有开始标签,没有结束标签,但在HTML5中是符合规范的。
(3) 可以省略全部标签的元素:html、head、body、tbody。
<!DOCTYPE html>
<title>例子</title>
<p>这时一段文字
<ol>
<li>这是一个列表
<li>这是一个列表
</ol>
以上代码标签不仅没有p标签和li的结束标签,连<html><head><body>标签都没有,但这也是符合HTML5的书写规则的。
3、 允许省略属性值的属性
XHTML要求所有元素的所有属性名都为小写,所有属性也都必须要写属性值,不能简写。所有属性值必须用双引号。
HTML5允许部分标志性的属性可以省略属性值。例如
<input checked type=”checkbox”>
<input readonly type=”text”>
<input display type=”text”>
4、 允许属性值不使用双引号
传统的XHTML按XML规范对属性进行要求,奥球所有的属性值都必须用引号引起来,但HTML5允许直接给出属性值,即使不放在引号中也是正确的。
例如:
<select>
<option value=java>这是个下拉菜单</option>
<option selected value=ee>这是个下拉菜单</option>
</select>
需要说明的是,如果某个属性的属性值包含空格等容易引起浏览器混淆的属性值,那么HTML5依然建议使用引号把这种特殊的属性值引起来。假如我们在my images目录下存有一张图片,如果直接使用以下代码来定义图片
<img src=my images/图片1.jpg>
上面这段代码很容易导致浏览器的误解,浏览器会误以为src的属性是my。这样程序将无法解析到真正的图片。此时应该把代码改为
<img src=”my images/图片1.jpg”>
以上就是我对HTML5新增功能的一部分了解。