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