【白話科普】10s 從零看懂 H5


最近大家有沒有發現,很多微信公眾號的動態內容變多了?我們常常可以看到,公眾號內容中有很多動態圖片甚至動畫,還可以通過手指滑動切換頁面,或者有一些小的點擊互動。

這種看起來有點高級的小作品,其實是都是“互動形式的多媒體廣告頁面”,它是 H5 的移動端網頁。

什么是 H5

H5 其實是縮寫,我們一般所說的 H5,其實是指 HTML5,即第五代超文本標記語言。而超文本標記語言 HTML,是一種標記語言。它包括一系列標簽,通過這些標簽可以將網絡上的文檔格式統一,使分散的 Internet 資源連接為一個邏輯整體。需要注意的是 HTML 不是一種編程語言,因此 HTML 的上手極為方便。那為什么 HTML 直到第 5 代才這么熱門的出現?

因為以前網頁主要在電腦中訪問,而如今訪問網頁的設備逐漸從電腦端轉移到了移動設備。可是原本的網頁如果用手機查看是很難看清楚內容的,這才推動了 HTML5 的出現。

而 HTML5 也不負眾望,帶着一些全新特性幾乎完美的達成了適配多種設備的需求。

HTML5 的特性

語義化標簽

語義是指對一個詞或者句子含義的正確解釋,HTML 語義化讓我們僅通過 HTML 元素就能看出頁面的大致結構。HTML5 新增的語義化元素,讓我們能夠通過標簽名判斷標簽內容。這些元素分別是:

  • 標簽通常放在頁面或頁面某個區域的頂部,用來設置頁眉;
  • 標簽中的內容比較獨立,可以是一篇新聞報道,一篇博客,它可以獨立於頁面的其他內容進行閱讀;
  • 標簽表示頁面中的一個區域,通常對頁面進行分塊或對內容進行分段,
    標簽和
    標簽可以互相嵌套;
  • 標簽位於頁面或頁面某個區域的底部,用來設置頁腳,通常包含版權信息,聯系方式等。

增強型表單

之前的 HTML 版本的功能,比如日期、顏色、文本框等,是需要單獨的控件進行支持的,而到了 HTML5,這些常用功能直接進入了表單標簽中,比如你可以直接通過 控制顏色。

除此外, HTML 還增加了新的表單屬性:

  • placeholder 提供對輸入域的提示值

  • required 規定表單提交前輸入域是否必填

  • pattern 規定用於驗證 input 域的正則表達式

  • min 規定輸入域允許的最小值

  • max 規定輸入域允許的最大值

  • multiple 輸入域可以選擇多個值,適用於 email 和 file 類型

DOM 擴展

HTML5 為 DOM 作了一些專門擴展,包括 classList 屬性、焦點管理、HTMLDocument 變化、字符集屬性、插入標記、getElementByClassName() 方法等。這其中 getElementByClassName() 方法是最受歡迎的,它可以讓添加事件處理程序不再局限於使用 ID 或標簽名 (getElementsByTagName)。

媒體元素

HTML5 新增了兩個與媒體相關的標簽

Web Storage

Web Storage 有兩個主要目標:

  • 提供一種在 cookie 之外存儲會話數據的途徑

  • 提供一種存儲大量可以跨會話存在的數據的機制

常用的兩個對象分別是:

  • localStorage:對象存儲某個特定會話的數據,該數據只保持到瀏覽器關閉。

  • sessionStorage:目的是跨越會話存儲對象,但有特定的訪問限制,限制因瀏覽器而異。

WebSockets

HTML5 支持了 WebSockets。WebSockets 可以讓雙工、雙向通信能在一個單獨連接上持久存在,WebSocket 協議更好的節省了服務器資源和帶寬,並且能夠更實時地進行通訊。但是這個需要支持這種協議的專門服務器,當然我們也可以選擇使用雲服務來解決。詳細可以查看《聊聊 WebSocket,還有 HTTP》

HTML5 的優劣

任何特性如果單獨看可能並不能直白的體會到它的優勢,那我們就來直白地看一下這些特性讓 HTML5 相較之前的版本增加了多少優勢:

  • 提高了用戶體驗並且提高了可用性:這些特性讓站點能夠加入更多多媒體元素,音視頻的使用更為廣泛。同時它替代了 FLASH 和 Silverlight

  • 對網站而言:對 SEO 的抓取和索引都更為友好了,讓用戶能夠更容易的查找到網站。

  • 提高了移植性:這讓大量應用程序和游戲不再局限於 PC 端,而是能使用手機訪問。

  • 節省開發成本:充分提現了“響應式設計”的概念,只要使用一套代碼就可以適配任何設備、任何系統、任何分辨率。

不過作為一個全新的版本,HTML5 有着新東西都有的痛點。最標志的就是不能被所有的瀏覽器支持,比如 IE,當前 IE9 以下的瀏覽器都不兼容 HTML5。

但是在移動端設備越來越普及,功能也越來越強大的當下。HTML5 占領全部市場只是時間問題,你看微信公眾號內容都開始出現 HTML5 了不是么?

推薦閱讀

網絡安全(一):常見的網絡威脅及防范

進擊的 Ansible(二):如何快速搞定生產環境 Ansible 項目布局?


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM