HTML5中规定的语法,在设计上兼顾了与现有HTML之间最大程度的兼容性。例如,在Web上充斥着“<p>没有结束标签”等HTML现象。HTML5不将这些视为错误,反而采取了“允许这些现象存在,并明确记录在规范中”的方法。因此,尽管与XHTML相比标记比较简洁, 而在遵循HTML5的Web浏览器中也能保证生成相同的DOM。那么下面就来看看具体的HTML5语法。
1.可以省略标签的元素
在HTML5中,有些元素可以省略标签。具体来讲有3种情况。
(1)不允许写结束标签的元素有area、base、br、col、command、embed、hr、img、input、keygen、link、meta、param、source、track、wbr。
不允许写结束标记的元素是指不允许使用开始标记与结束标记将元素括起来的形式,只允许使用“<元素/>”的形式进行书写。例如,“<br>...</br>"的写法是错误的,应该写成“<br/>”。但是沿袭下来的“<br>”的写法也是允许的。
(2) 可以省略结束标签的元素有li、dt、dd、p、rt、rp、optgroup、option、colgroup、thead、tbody、tfoot、tr、td、th。
(3)可以省略整个标签的元素有html、head、body、colgroup、tbody。
需要注意的是,虽然这些元素可以省略,但实际上却是隐式存在的。例如: “<body>”标签可以省略,但在DOM树上它是存在的,可以永恒访问到“document.body”。
上述列表中也包括了HTML5的新元素。有关这些新元素的用法,后续我们会发表出来,敬请关注。
2.取得boolean值的属性
取得布尔值(Boolean)的属性,例如disabled和readonly等,通过省略属性的值来表达“值为true”。如果要表达“值为false”,则直接省略属性本身即可。此外,在写明属性值来表达“值为true”时,可以将属性值设为属性名称本身,也可以将值设为空字符串,案例如下:
<!-- 以下的checked属性值皆为true -->
<input type="checkbox" checked>
<input type="checkbox" checked="checked">
<input type="checkbox" checked="">
3.省略属性的引用符
设置属性值时,可以使用双引号或单引号来引用。
HTML5语法则更进一步,只要属性值不包含空格、< 、> 、' 、" 、` 、= 等字符,都可以省略属性的引用符,案例如下:
<!-- 请观察type属性的引用符 -->
<input type="text">
<input type='text'>
<input type=text>
本文均为荣益互联摘自权威资料,书籍,文章,或来自网络,如有版权纠纷或违规问题,请联系我们删除。我们欢迎您的分享,谢绝直接抄袭复制。感谢…