新增功能 1. HTML5新標準中直接添加了擁有具體含義的HTML標簽比如:<article>、<footer>、<header>、<nav>、<section>、<video>, <progress>(進度條)、<meter>(容量占用條)、<time>(不顯示效果), <aside>(文章側欄) ...
- 新增功能
1. HTML5新標準中直接添加了擁有具體含義的HTML標簽比如:<article>
、<footer>
、<header>
、<nav>
、<section>、
<video>
, <progress>(進度條)、
<meter>(容量占用條)、<time>(不顯示效果)
, <aside>(文章側欄)
, <canvas>
同時取消了一些標簽,如<acronym>
, <applet>
, <basefont>
, <big>
, <center>
, <dir>
, <font>
, <frame>
, <frameset>
, <isindex>
, <noframes>
, <strike>
,<tt>
2. HTML5的標準中直接添加了智能表單,讓這一切都變得那麼的簡單,比如 calendar
、date
、time
、email
、url
、search
3. 在HTML5標準中原生的就支持音頻、視頻、畫布等技術。讓WEB程式更加獨立,更好的適應多種形式的客戶端。
4. HTML5 提供了兩種在客戶端存儲數據的新方法
5. HTML5 的canvas
元素使用 JavaScript 在網頁上繪製圖像。並擁有多種繪製路徑、矩形、圓形、字元以及添加圖像的方法。
6. 在不影響UI update及瀏覽器與用戶交互的情況下, 前端做大規模運算,只能通過 setTimeout
之類的去模擬多線程 。而新的標準中,JS新增的HTML5 Web Worker對象原生的就支持多線程。
7. WebSockets
是在一個(TCP)介面進行雙向通信的技術,PUSH技術類型。WebSocket
是html5規範新引入的功能,用於解決瀏覽器與後臺伺服器雙向通訊的問題,使用WebSocket
技術,後臺可以隨時向前端推送消息,以保證前後臺狀態統一,在傳統的無狀態HTTP協議中,這是“無法做到”的。
8. HTML5(text/html)瀏覽器將在錯誤語法的處理上更加靈活。HTML5在設計時保證舊的瀏覽器能夠安全地忽略掉新的HTML5代碼。與HTML4.01相比,HTML5給出瞭解析的完整規則,讓不同的瀏覽器即使在發生語法錯誤時也能返回完全相同的結果。
9. 由於項目中經常遇到用Web應用中控制操作本地文件,而之前都是使用一些富客戶端技術比如flash
,ActiveX
,Silverlight
等技術。在HTML5的新的提供的 HTML5 File API
讓JS可以輕鬆上陣了。
10. HTML5僅有一種類型,<!DOCTYPE html>
- 頁面佈局變化
HTML5:
代碼如下:
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <title>my page</title> 5 </head> 6 <body> 7 <header>header</header> 8 <nav>nav</nav> 9 <article> 10 <section>section</section> 11 </article> 12 <aside>aside</aside> 13 <footer>footer</footer> 14 </body> 15 </html>
- 標簽具體解釋
<section>
定義文檔中的節。它用來表現普通的文檔內容或應用區塊,但section
元素標簽並非一個普通的容器元素,它表示一段專題性的內容,一般會帶有標題。
<article>
特殊的section
標簽,它比section
具有更明確的語義,它代表一個獨立的、完整的相關內容塊。當我們描述一件具體的事物的時候,通常鼓勵使用article
來代替section
。article
會有標題部分(通常包含在header
內),也可以包含footer
。article
可以嵌套,內層的article
對外層的article
標簽有隸屬關係。
<nav>可以作為頁面導航的鏈接組,其中的導航元素鏈接到其它頁面或者當前頁面的其它部分,使html代碼在語義化方面更加精確,同時對於屏幕閱讀器等設備的支持也更好。
<aside>
標簽用來裝載非正文的內容,被視為頁面裡面一個單獨的部分。它包含的內容與頁面的主要內容是分開的,可以被刪除,而不會影響到網頁的內容、章節或是頁面所要傳達的信息。例如廣告,成組的鏈接,側邊欄等等。
<header>
標簽定義文檔的頁眉,通常是一些引導和導航信息。它不局限於寫在網頁頭部,也可以寫在網頁內容裡面。通常header
標簽至少包含一個標題標記(h1
-h6
),還可以包括hgroup
標簽,還可以包括表格內容、標識、搜索表單、nav
導航等。
<footer>
標簽定義section
或document
的頁腳,包含了與頁面、文章或是部分內容有關的信息,比如說文章的作者或者日期。 它和header
標簽使用基本一樣,可以在一個頁面中多次使用,如果在一個區段的後面加入footer
,那麼它就相當於該區段的頁腳了。
<hgroup>
標簽是對網頁或區段section
的標題元素(h1
-h6
)進行組合。例如,在一區段中你有連續的h系列的標簽元素,則可以用hgroup
將他們括起來。
<figure>
用於對元素進行組合。多用於圖片與圖片描述組合。
- <input>新增類型
1. number類型
1 <input type="number" name="demoNumber" min="1" max="100" step="1"/>
控制輸入數據的範圍。name: 標識表單提交時的key值,min: 標識當前輸入框輸入的最小值, max: 標識當前輸入框輸入的最大值,step: 標識點擊增大/減小的時候,增加/減小的步長,value:規定預設值
2. Email類型
1 <input type="email" name="email" placeholder="請輸入註冊郵箱"/>
系統自動檢測是否為郵箱格式
3. URL類型
1 <input type="url" placeholder="請輸入網址" name="url"/>
系統自動檢測是否為網址格式
4. range類型
1 <form oninput="output.value=parseInt(range.value)"> 2 <input type="range" min="0" max="100" step="5" name="range" value="0"/> 3 <output name="output">0<output/> 4 </form>
range是滑動條效果,可以和<output>標簽一起使用顯示滑動條代表的數值(form標簽加上oninput="output.value=parseInt(range.value)")
5. 日期類型
datetime類型谷歌瀏覽器不支持
6. color類型
1 <input type="color" name="colordemo"/>
7. 表單自動提示
1 <input type="text" autocomplete="on" name="demoAutoComplete" list="autoNames" /> 2 <datalist id="autoNames"> 3 <option value="實驗樓" ></option> 4 <option value="HTML5" ></option> 5 <option value="input標簽" ></option> 6 </datalist>
- 表單新增屬性
1.input標簽新增屬性
2.form新增屬性
- 文件操作API
主要是FileList、Blob、File、FileReader幾個JS對象:
FileList: