引言,認識兩個標準制定的組織在講什么是Html5之前得先了解兩個組織;WHATWG :網(wǎng)頁超文本技術工作小組(英語:Web Hypertext Application Technology Working Group,縮寫為WHATWG),是一個以推動網(wǎng)絡 HTML 5 標準為目的而成立的組織。在2004年,由Opera、Mozilla基金會和蘋果這些瀏覽器廠商和一些相關團體形成的一個松散的、非正式的協(xié)作組織,這些團體希望發(fā)展一些新的技術,從而開發(fā)人員可以在互聯(lián)網(wǎng)上編寫并部署應用。 另外一個就是大家熟悉的W3C :萬維網(wǎng)聯(lián)盟(World Wide Web Consortium,W3C),又稱W3C理事會,它主要是為解決web應用中不同平臺、技術和開發(fā)者帶來的不兼容問題,保障Web信息的順利和完整流通,萬維網(wǎng)聯(lián)盟制定了一系列標準并督促Web應用開發(fā)者和內容提供者遵循這些標準。標準的內容包括使用語言的規(guī)范,開發(fā)中使用的導則和解釋引擎的行為等等。W3C也制定了包括XML和CSS等的眾多影響深遠的標準規(guī)范。 那什么是HTML5呢?HTML 5草案的前身名為Web Applications 1.0,是在2004年由WHATWG提出,再于2007年獲W3C接納,并成立了新的HTML工作團隊。在2008年1月22日,第一份正式草案發(fā)布。WHATWG表示該規(guī)范是目前仍在進行的工作,仍須多年的努力。目前Firefox、Google Chrome、Opera、Safari(版本4以上)、Internet Explorer 9已支援HTML5技術。 HTML5本質并沒有對之前HTML4版本的規(guī)范進行徹底的變革,更令人欣喜的是,HTML5一開始設計就考慮了跟之前的標準進行兼容。而且把最新的WEB開發(fā)的一些新技術新的規(guī)范引入進了新版本的標準中。那么它的本質是什么呢?其實HTML5的發(fā)展就是html,css,jsapi的發(fā)展,用另外一句話解釋就是:HTML5=HTML CSS JSAPI。 HTML5帶給我們的是什么呢?1、讓Web再次回歸到富客戶端地步,而且更加的獨立,減少了對第三方插件的依賴。 比如:之前的HTML4的標準中并沒有對于視頻、音頻以及其他的富客戶端技術支持的非常好,這就使得Flash和SilverLight變得異常的成功。而在HTML5新標準中原生的就支持音頻、視頻、畫布等技術。讓我們的WEB程序擁有更多富客戶端表現(xiàn)的方式,而且讓我們的WEB程序更加獨立,更好的適應多種形式的客戶端。 2、對本地離線存儲的更好的支持 由于之前想在客戶端保存一些數(shù)據(jù)都是由 cookie 完成的。但是 cookie 不適合大量數(shù)據(jù)的存儲,因為它們由每個對服務器的請求來傳遞,這使得 cookie 速度很慢而且效率也不高。 HTML5 提供了兩種在客戶端存儲數(shù)據(jù)的新方法:
在 HTML5 中,數(shù)據(jù)不是由每個服務器請求傳遞的,而是只有在請求時使用數(shù)據(jù)。它使在不影響網(wǎng)站性能的情況下存儲大量數(shù)據(jù)成為可能。 對于不同的網(wǎng)站,數(shù)據(jù)存儲于不同的區(qū)域,并且一個網(wǎng)站只能訪問其自身的數(shù)據(jù)。 HTML5 使用 JavaScript 來存儲和訪問數(shù)據(jù)。有了本地數(shù)據(jù)庫的支持,讓一些簡單的離線應用也成為了可能。 3、新的特殊內容元素,更好的支持SEO以及方便視障人士使用 現(xiàn)在所有的站點基本上都是Div CSS布局,幾乎所有的文章標題、內容、輔助介紹等都用Div容器來承載。搜索引擎在抓取頁面內容時,因為沒有明確的容器的含義只能去猜測這些標簽容器承載的是文章標題還是文章內容等,HTML5新標準中直接添加了擁有具體含義的HTML標簽比如:article、footer、header、nav、section 4、更加智能的表單標簽 之前的表單標簽,僅僅是簡單的類型的約束,比如文本框、文本域、下拉列表等,而跟業(yè)務結合緊密的表單標簽數(shù)據(jù)校驗等控制都沒有很好的支持,而是用這些技術都基本上都是跟第三方的JS控件進行結合使用,但是這些第三方總會涉及到版本控制、瀏覽器兼容性、非標準等一系列的問題,而在HTML5的標準中直接添加了智能表單,讓這一切都變得那么的簡單,比如 calendar、date、time、email、url、search。 5、HTML5即時二維繪圖 ,也就是畫布的引入,讓Javascript子彈飛 畫布的引入使得:Web端生成動畫效果、制作Web游戲、更好的交互體驗設計都增加了無限的變數(shù),當社區(qū)充斥著亂七八糟超炫的HTML5的JS控制的效果的時候,讓人無限的贊嘆。HTML5 的canvas 元素使用JavaScript 在網(wǎng)頁上繪制圖像。畫布是一個矩形區(qū)域,您可以控制其每一像素。 canvas 擁有多種繪制路徑、矩形、圓形、字符以及添加圖像的方法。 6、JS嗑藥了,支持多線程 在不影響UI update 及 瀏覽器與用戶交互的情況下, 前端做大規(guī)模運算,只能通過 setTimeout 之類的去模擬多線程 。而新的標準中,JS新增的HTML5 Web Worker對象原生的就支持多線程。 7、WebSockets讓跨域請求、長連接、數(shù)據(jù)推送等一切都變得那么簡單,Web不僅僅是Ajax WebSockets是在一個(TCP)接口進行雙向通信的技術,PUSH技術類型。WebSocket是html5規(guī)范新引入的功能,用于解決瀏覽器與后臺服務器雙向通訊的問題,使用WebSocket技術,后臺可以隨時向前端推送消息,以保證前后臺狀態(tài)統(tǒng)一,在傳統(tǒng)的無狀態(tài)HTTP協(xié)議中,這是“無法做到”的。 8、更好的異常處理 HTML5(text/html)瀏覽器將在錯誤語法的處理上更加靈活。HTML5在設計時保證舊的瀏覽器能夠安全地忽略掉新的HTML5代碼。與HTML4.01相比,HTML5給出了解析的完整規(guī)則,讓不同的瀏覽器即使在發(fā)生語法錯誤時也能返回完全相同的結果。 9、文件API讓文件上傳和操縱文件變得那么簡單 由于項目中經(jīng)常遇到用Web應用中控制操作本地文件,而之前都是使用一些富客戶端技術比如flash,ActiveX,Silverlight等技術,面對文件JS就是個shit,就是個雞肋。在HTML5的新的提供的FHTML5 File API 讓JS可以輕松上陣了。 10、編輯、拖放、微數(shù)據(jù)、瀏覽歷史管理、地理信息接口API、設備硬件操作API等很多的新功.... HTML5的未來?當然HTML5不是孤立的,Javascript API的增強,讓JS變成異常強大的未來的編程武器。CSS3帶給未來Web應用也是極大的新的挑戰(zhàn)。相信由于HTML5標準化的支持,相信未來Web技術真正的可以跑在任何的端,也讓我們的Web應用更加的獨立,更加的輕松的融入到各個端中,HTML5 就是未來! 總結:通過上面HTML5的新特點,不難總結出HTML5=Javascript HTML CSS。HTML5的新特性帶給開發(fā)者的是更友好更豐富的本地處理的API,更智能的更優(yōu)雅的HTML標簽,更強的本地處理的功能,通信也進一步加強。Google很早之前就意識到了,客戶只要擁有一個瀏覽器就可以了,相信不久的將來現(xiàn)在的Web的應用不在對本地處理那么雞肋,CS形式的客戶端相信也會越來越少。 作為開發(fā)者,當Adobe公司宣布放棄Flash,把最大的精力放到HTML5的開發(fā)上的時候,那你可能會看到這些趨勢,當微軟選擇了HTML5而放棄了Silverlight繼續(xù)升級的時候,那你基本上也沒有什么好選擇的了。HTML5的發(fā)力,的確帶給我們每個開發(fā)者都帶來了機會。 當然以上只是筆者的觀點,每個人都有閱讀新技術的角度,歡迎大家轉載討論。 我參與的厚德IT團隊也同步更新,希望大家關注。(厚德IT專注于IT最新技術分享) 此文章在另外一個blog同步:http://www.cnblogs.com/houodeit/archive/2012/05/22/2513655.html |
|
|
來自: 網(wǎng)海拾貝網(wǎng)絡豬 > 《待分類》