在 html页面中,使不使用元素只代表一种风格,浏览器会自动假设页面中已经包含了这些元素,如果使用js来查询DOM仍然能够找到这些标签。
<!DOCTYPE html>
<title>A Tiny HTML Document</title>
<body>
<p>Let's rock the browser, HTML5 style.</p>
</body>
<script>
alert(document.getElementsByTagName("head")[0].innerHTML);
alert(document.getElementsByTagName("body")[0].innerHTML);
</script>
在页面显示结果为
如果html中不含有文档类型声明,即<!DOCTYPE html>
,那么浏览器就会转换到混杂模式(quirk mode),添加了文档声明后就会在标准模式下工作(standard mode)。
添加字符编码:<meta charset="utf-8">
页面语言:为元素添加指定lang属性-<html lang="en">
,en表示英语、zh-cn表示中国大陆。
如果页面含有不同语言,这时可以为文本中的不同区块指定lang属性,例如可以为不同语言区块的div元素指定不同的lang属性。
添加样式表:<link href="style.css" rel="stylesheet">
添加JavaScript:<script src="script.js"></script>
,如果不写后面的闭合标签或者使用空元素语法想缩短标记,页面将不会执行加载脚本。如果你在IE中要花费大量时间测试包含js的页面,还应该在head区块中包含这样一条注释,叫做web标志,要放在指定字符编码的元数据标签后面:
<meta charset="utf-8">
<!--saved from url=(0014)about:internet -->
这条注释告诉IE将页面视为从远程网站上下载下来的,否则,IE会弹出警告,在你点击了“允许阻止内容”后才可以执行js。其他的浏览器都会忽略这条注释。
放松的规则:不区分大小写,<P></P>
前后一个大写一个小写是可以的;允许省略关闭空元素,如<img>、<br>、<hr>
;也修改属性的语法规则,属性中不包含受限的字符(比如>、=或者空格)就可以不加引号,如<img alt="Horsehead Nebula" src=Horsehead01.jpg>
;只有属性名没有属性值也可以,如<input type="checkbox" checked>
。
html5在线验证:http://validator.w3.org
html5新增的元素:
用于构建页面的语义元素:<article>、<aside>、<figcaption>、<figure>、<fotter>、<header>、<hgroup>、<nav>、<section>、<details>、<summary>
用于标识文本的语义元素:<mark>、<time>、<wbr>(以前就支持,现在已经正式列入规范)
web表单提交:<input>(不是新元素,但是增加了许多新类型)、<datalist>、<keygen>、<meter>、<progress>、<command>、<menu>、<output>
音频视频及插件:<audio>、<video>、<source>、<embed>(以前就支持,现在已列入规范)
Canvas:<canvas>
非英语支持:<bdo>、<rp>、<rt>、<ruby>