《HTML5+CSS3入門經典》——1.2 HTML5的優勢

華章計算機發表於2017-08-01

1.2 HTML 5 的優勢

任何新鮮事物的出現,都會帶給人們驚喜,同時也會存在很多爭議。雖然Web 開發者普遍認為HTML 5 好,但是還是會很擔心,例如,新的HTML 5 在老版本的瀏覽器上能否正常執行,會不會產生錯誤等各種問題。HTML 5 是基於各種各樣的理念進行設計的,這些設計理念體現了對可能性和可行性的新認識。

1.2.1 使用HTML 5 的理由
以下三個理由證明我們可以放心使用HTML 5 。相容性:HTML 5 在老版本的瀏覽器上也可以正常執行。實用性:HTML 5 內部並沒有封裝什麼很複雜的、不切實際的功能,而只是封裝了簡單實用的功能。使用者優先性:HTML 5 規範是基於使用者優先準則編寫的。下面針對這些原則進行介紹。

首先是相容性問題。雖然到了HTML 5 時代,但並不代表現在用HTML 4 建立出來的網站必須全部重建。HTML 5 並不是顛覆性的革新。相反,HTML 5 的核心理念實際上是保持一切新特性平滑過渡。儘管HTML 5 標準的一些特性非常具有革命性,但是HTML 5 旨在進化而非革命。這一點正是通過相容性體現出來的。正是因為保障了相容性,才能讓人們毫不猶豫地選擇HTML 5 開發網站。
然後是實用性。所謂的實用性,就是要求能夠解決實際問題。HTML 5 內只封裝了切實有用的功能,不封裝複雜而沒有實際意義的功能。
最後是使用者優先性。HTML 5 規範是基於使用者優先準則編寫的,其主要宗旨是“使用者即上帝”。這意味著在遇到無法解決的衝突時,規範會把使用者放到第一位,其次是頁面的作者,再次是實現者(或瀏覽器),然後是規範制定者,最後才考慮理論的純粹實現。
1.2.2 HTML 5 的化繁為簡
HTML 5 的口號是“簡單至上,儘可能簡化”。因此,HTML 5 做了以下改進。以瀏覽器原生能力替代複雜的JavaScript程式碼。新的簡化的DOCTYPE。
新的簡化的字符集宣告。

簡單而強大的HTML 5 API 。我們會在以後的章節中詳細講解這些改進。
1.2.3 HTML 5 的無外掛正規化
過去,很多功能只能通過外掛或者複雜的hack(本地繪圖API、本地socket 等)來實現。不過,通過外掛的方式實現,通常存在以下幾個問題。

外掛安裝可能失敗。
外掛可能被禁用或者遮蔽。

外掛自身會成為被攻擊的物件。
外掛不容易與HTML文件的其他部分整合(因為外掛邊界、剪裁和透明度問題)。

雖然一些外掛的安裝率很高,但在控制嚴格的公司內部網路環境中經常會被封鎖。此外,由於外掛還會經常給使用者帶來煩人的廣告,一些使用者也會選擇遮蔽此類外掛。如果這樣做,一旦使用者禁用了外掛,就意味著依賴該外掛顯示的內容也無法表現出來了。

在我們已經設計好的頁面中,要想把外掛顯示的內容與頁面上其他元素整合也比較困難,因為會引起剪裁和透明度等問題。外掛使用的是自帶的模式,與普通Web 頁面所使用的不一樣,所以當彈出選單或者其他視覺化元素與外掛重疊時,會特別麻煩。這時,就需要HTML 5 應用原生功能來解決,它可以直接用CSS和JavaScript的方式控制頁面佈局。實際上,這也是HTML 5 的最大亮點,顯示了先前任何HTML版本都不具備的強大能力。HTML 5 不僅僅提供了新元素支援新功能,更重要的是新增了對指令碼和佈局之間的原生互動能力,鑑於此,我們可以實現以前不能實現的效果。
以HTML 5 中的canvas 元素為例,有很多底層的事情以前是沒辦法做到的(比如,在HTML 4 的頁面中就難畫出對角線),而有了canvas,就可以很容易地實現了。更為重要的是,新API釋放出來的潛能,以及僅需寥寥幾行CSS程式碼就能完成佈局的能力。基於HTML 5 的各類API的優秀設計,我們可以輕鬆對它們進行組合應用。HTML 5 的不同功能組合應用為Web 開發注入了一股強大的新生力量。
1.2.4 HTML 5 的新特性
HTML 5 給人們帶來了眾多驚喜,例如下面這些優點和新的特性。基於HTML、CSS、DOM和JavaScript。減少了對外部外掛的需求(比如Flash)。更優秀的錯誤處理。

更多取代指令碼的標記。
獨立於裝置。
用於繪畫的canvas元素。
用於媒介回放的video和audio元素。
對本地離線儲存的更好支援。
新元素和表單控制元件。
而這些新特性在如今的瀏覽器最新版本中得到越來越普遍的實現,越來越多的開發者開始學習和使用這些新特性。


相關文章