HTML5語法
版本兼容性
可以省略標(biāo)記的元素
- 不允許寫結(jié)束標(biāo)記的元素有:area,base,br,col,command,embed,hr,img,input,keygen,link,meta,param,source,track,wbr。
- 可以省略結(jié)束標(biāo)記的元素有:li,dt,dd,p,rt,rp,optgroup,option,colgroup,thead,tbody,tfoot,tr,td,th楼肪。
- 可以省略全部標(biāo)記的元素有:html,head,body,colgroup,tbody培廓。
具有布爾值的屬性
對于具有boolean值的屬性,如disabled與readonly等春叫,當(dāng)只寫屬性而不指定屬性值時肩钠,表示屬性值為true泣港;如果想要獎屬性值設(shè)為false,可以不使用該屬性价匠。另外当纱,要想獎屬性值設(shè)定為true,也可以將屬性名設(shè)定為屬性值踩窖,或?qū)⒖兆址O(shè)定為屬性值坡氯。例如:
<!--只寫屬性,不寫屬性值洋腮,代表屬性為true-->
<input type="checkbox" checked>
<!--不寫屬性廉沮,代表屬性為false-->
<input type="checkbox">
<!--屬性值=屬性名,代表屬性為true-->
<input type="checkbox" checked="checked">
<!--屬性值=空字符串徐矩,代表屬性為true-->
<input type="checkbox" checked>
省略引號
屬性值兩邊既可以用雙引號,也可以用單引號叁幢。HTML5在此基礎(chǔ)上做了一些改進滤灯,當(dāng)屬性值不包括空字符串,<曼玩,>鳞骤,=,單引號黍判,雙引號鄧自負是豫尽,屬性值兩邊的引號可以省略。例如:
<input type="text">
<input type='text'>
<input type=text>
HTML5元素
新增的結(jié)構(gòu)元素
元素名稱 | 說明 |
---|---|
header | 標(biāo)記頭部區(qū)域的內(nèi)容(用于整個頁面或頁面中的一塊區(qū)域) |
footer | 標(biāo)記腳部區(qū)域的內(nèi)容(用于整個頁面或頁面中的一塊區(qū)域) |
setion | Web頁面中的一塊區(qū)域 |
article | 獨立的文章內(nèi)容 |
aside | 相關(guān)內(nèi)容或者引文 |
nav | 導(dǎo)航類輔助內(nèi)容 |
新增功能元素
- hgroup元素:
用于對整個頁面或頁面中一個內(nèi)容區(qū)塊的標(biāo)題進行組合顷帖。例如:
<hgroup>...</hgroup>
在HTML4中表示為:
<div>...</div>
- figure元素:
表示一段獨立的流內(nèi)容美旧,一般表示文檔主體流內(nèi)容中的一個獨立單元。使用figcaption元素可為figure元素組添加標(biāo)題贬墩,例如:
<figure>
<figcaption>標(biāo)題</figcaption>
<p>內(nèi)容...</p>
</figure>
在HTML4中表示為:
<dl>
<h1>標(biāo)題</h1>
<p>內(nèi)容....</p>
</dl>
- video元素:
定義視頻榴嗅,比如電影片段或其他視頻流。例如:
<video src="movie.ogg" controls="controls">video元素</video>
在HTML4中表示為:
<object type="video/ogg" data="movie.ogv">
<param name="src" value="movie.ogv">
</object>
- audio元素:
定義音頻陶舞,比如音樂或其他音頻流嗽测。例如:
<audio type="someaudio.wav">audio元素</audio>
在HTML4中表示為:
<object type="application/ogg" data="someaudio.wav">
<param name="src" value="someaudio.wav">
</object>
- embed元素:
用來插入各種多媒體,格式可以是MIDI,WAV,AIFF,AU,MP3等肿孵。例如:
<embed src="horse.wav"/>
在HTML4中表示為:
<object data="flash.swf" type="application/x-shockwave-flash></object>
- mark元素:
主要用來在視覺上向用戶呈現(xiàn)那些需要突出顯示或高亮顯示的文字唠粥。mark元素的一個比較典型的應(yīng)用就是在搜索結(jié)果中向用戶高亮顯示搜索關(guān)鍵詞。例如:
<mark></mark>
在HTML4中表示為:
<span></span>
- time元素:
表示日期或時間停做,也可以同時表示兩者晤愧。例如:
<time></time>
在HTML4中表示為:
<span></span>
- canvas元素:
表示圖形,如圖表和其他圖像蛉腌。這個元素本身沒有行為养涮,僅提供一塊畫布葵硕,但它把一個繪圖API展現(xiàn)給客戶端JavaScript,以使腳本能夠把想繪制的東西繪制到這塊畫布上。例如:
<canvas id="myCanvas" width="200" height="200"></canvas>
在HTML4中表示為:
<object data="inc/hdr.svg" type="image/svg+xml" width="200" height="200"></object>
- output元素:
表示不同類型的輸出贯吓,比如腳本的輸出懈凹。例如:
<output></output>
在HTML4中表示為:
<span></span>
- source元素:
為媒介元素(比如<video>和<audio>)定義媒介資源。例如:
<scource>
在HTML4中表示為:
<param>
- menu元素:
表示彩蛋列表悄谐。當(dāng)希望列出表單控件時使用該標(biāo)簽介评。例如:
<menu>
<li><input type="checkbox"/>Red</li>
<li><input type="checkbox"/>blue</li>
</menu>
在HTML4中,menu元素不被推薦使用爬舰。
- ruby元素:
表示ruby注釋(中文注音或字符)们陆。例如:
<ruby>漢<rt><rp>(</rp>han'<rp>)</rp></rt></ruby>
- rt元素:
表示字符(中文注音活字符)的解釋或發(fā)音。例如:
<ruby>漢<rt> han'</rt></ruby>
- rp元素:
在ruby注釋中使用情屹,以定義不支持ruby元素的瀏覽器所顯示的內(nèi)容坪仇。例如:
<ruby>漢<rt><rp>(</rp>han'<rp>)</rp></rt></ruby>
- wbr元素:
表示軟換行。wbr元素與br元素的區(qū)別是br元素表示此處必須換行垃你;而wbr元素的意思是瀏覽器窗口活父級元素的寬度足夠?qū)挄r(沒必要換行時)不進行換行椅文,而當(dāng)寬度不夠時,主動在此處進行換行惜颇。 - command元素:
表示命令按鈕皆刺,如單選按鈕,復(fù)選框或按鈕凌摄。例如:
<command onclick="ucut()" label="cut">
- details元素:
表示用戶要求得到并且可以得到的細節(jié)信息羡蛾,可以與summary元素配合使用。summary元素提供標(biāo)題或圖例锨亏。標(biāo)題是可見的痴怨,用戶單機標(biāo)題時,會顯示出細節(jié)信息器予。summary元素應(yīng)該會死details元素的第一個子元素腿箩。例如:
<details>
<summary>HTML5</summary>
For the latest updates form the HTML WG.
</details>
- datalist元素:
datalist元素表示可選數(shù)據(jù)的列表,與input元素配合使用劣摇,可以制作出輸入值的下拉列表珠移。例如:
<datalist></datalist>
- datagird元素:
表示可選數(shù)據(jù)的列表,它以樹形列表的形式來顯示末融。例如:
<datagird></datagird>
- keygen元素:
表示生成密鑰钧惧。例如:
<keygen>
- progress元素:
表示運行中的進程,可以使用progress元素來顯示JavaScript中耗費時間的函數(shù)的進程勾习。例如:
<meter></meter>
- email:表示必須輸入E-mail地址的文本輸入框浓瞪。
- url:表示必須輸入URL地址的文本輸入框。
- number:表示必須輸入數(shù)值的文本輸入框巧婶。
- range:表示必須輸入一定范圍內(nèi)數(shù)字值的文本輸入框乾颁。
- Date Pickers:
HTML5擁有多個可供選取日期和時間愛你的新型輸入文本框: