|
HTML5的發(fā)展越來越邁向成熟,很多的應(yīng)用已經(jīng)逐漸出現(xiàn)在你我日常生活中了,不只讓傳統(tǒng)網(wǎng)站上的互動Flash逐漸的被HTML5的技術(shù)取代,更重要的是可以透過HTML5的技術(shù)來開發(fā)跨平臺的手機軟件,讓許多開發(fā)者感到十分興奮!
當(dāng)你開始想要學(xué)習(xí)、試圖想要投入相關(guān)的開發(fā)時,由于HTML5的技術(shù)還在持續(xù)發(fā)展、進化當(dāng)中,學(xué)習(xí)的資源也都比較零散,較難有一個整體的方向。在本篇文章中,筆者將會介紹HTML5的主要技術(shù)組成,并且提供一些學(xué)習(xí)資源讓大家參考。
HTML5到底是什么?
一般廣義而言的HTML5則包含了HTML、CSS和JavaScript三個部分,不單單只是HTML部分而已,CSS 3和JavaScript也有許多的創(chuàng)新,讓整個網(wǎng)頁程序功能更加繽紛。
HTML5的技術(shù)組成
脫機功能
HTML5透過JavaScript提供了數(shù)種不同的脫機儲存功能,相對于傳統(tǒng)的Cookie而言有更好的彈性以及架構(gòu),并且可以儲存更多的內(nèi)容。
- WebStorage: 比 Cookies 更大、更有彈性的的儲存
- Web SQL Database: 本地端的SQL數(shù)據(jù)庫
- Indexed DB: Key-value 的本地數(shù)據(jù)庫
- Application Cache: 將部分常用的網(wǎng)頁內(nèi)容cache起來
實時通訊
以往網(wǎng)站由于HTTP協(xié)議以及瀏覽器的設(shè)計,實時的互動性相當(dāng)?shù)氖芟蓿荒苁褂靡恍┘记蓙怼阜抡妗箤崟r的通訊效果,但HTML5提供了完善的實時通訊支持。
- WebSocket: 實時的socket聯(lián)機
- Web Workers: 以往 JavaScript 都是 single thread,透過 Worker 可以有多個運算
- Notifications: 原生的提示訊息,類似像OS X的Growl提示
檔案以及硬件支持
不知道大家有沒有發(fā)現(xiàn),在Gmail等新的網(wǎng)頁程序當(dāng)中,已經(jīng)可以透過拖拉的方式將檔案作為郵件附件?這就是這部份HTML5檔案的功能中的Dragn Drop和File API。
- Dragn Drop: HTML元素的拖拉
- File API: 讀取用戶本機計算機的內(nèi)容
- Geolocation: 地理定位
- Device orientation: 手持裝置的方向
- Speech input: 語音輸入
語義化
語義化的網(wǎng)絡(luò)是可以讓計算機能夠更加理解網(wǎng)頁的內(nèi)容,對于像是搜索引擎的優(yōu)化(SEO)或是推薦系統(tǒng)可以有很大的幫助。
- New tags: 新的標(biāo)簽,像是 header、 section等
- Application tags: 也是新的標(biāo)簽,像是 meter、 progress
- 等
- Microdata: 加入語義的數(shù)據(jù)讓搜索引擎等網(wǎng)站可以正確顯示
- Form type: form可以加入的type便多了,包含email和tel等屬性,瀏覽器會協(xié)助進行數(shù)據(jù)格式的驗證
多媒體
Audio、Video的卷標(biāo)支持以及Canvas的功能應(yīng)該是大家對于HTML5最熟悉的部份了,也是許多人認(rèn)為Flash會被取代的主要原因。
- Audio video: 影片和音樂的原生播放支持
- Canvas: 2D的繪圖功能支持
- Canvas 3D: 3D的繪圖功能支持
- SVG: 向量圖支援
CSS 3
CSS3支持了字體的嵌入、版面的排版,以及最令人印象深刻的動畫功能。
- Selector: 更有彈性的選擇器
- Webfonts: 嵌入式字體
- Layout: 多樣化的排版選擇
- Stlying radius gradient shadow: 圓角、漸層、陰影
- Border background: 邊框的背景支持
- Transition: 組件的移動效果
- Transform: 組件的變形效果
- Animation: 將移動和變形加入動畫支持
JavaScript
在比較JavaScript的基本面也新增了DOM的API、和瀏覽器上下頁的紀(jì)錄修改。
- DOM API: 更方便的查詢DOM組件
- History API: 瀏覽器的上下頁內(nèi)容修改,方便AJAX可以保留瀏覽記錄
現(xiàn)在就開始用HTML5
截至目前而言,主流的網(wǎng)頁瀏覽器Firefox 5、Chrome 12和Safari 5都已經(jīng)支持了許多的HTML5標(biāo)準(zhǔn),而且目前最新版的IE 9也支持了許多HTML5標(biāo)準(zhǔn),隨著使用者陸續(xù)升級到新版的瀏覽器,開發(fā)者應(yīng)該在現(xiàn)在就可以著手開發(fā)!
而對于舊的瀏覽器兼容性而言,先前撰文介紹過的CSS3 Pie便是一個讓舊版瀏覽器也能支持CSS 3功能的JavaScript函數(shù)庫。
而Modernizer也是一個相當(dāng)重要的JavaScript函數(shù)庫,提供開發(fā)者輕松的方式判別目前使用者的瀏覽器是否有支持特定的HTML5功能。
學(xué)習(xí)方向
在看完本篇文章之后,大家或許可以針對自己有興趣的方面透過關(guān)鍵詞搜尋去尋找相關(guān)的學(xué)習(xí)資源以及內(nèi)容。
Google的HTML5 Rocks網(wǎng)站也是我相當(dāng)推薦的,其中的透過HTML5開發(fā)的HTML5介紹投影片更是值得一看,可以將上述的內(nèi)容都實際試玩(推薦使用Chrome瀏覽器以獲得完整的功能效果)。
it知識庫:HTML5新手入門指南,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。