HTML5到底是什麼

HTML的全名是HyperText Markup Language,是編寫網頁的基本語言,而它並不是一個程式, 只是一些插在普通文件內的碼( code ),這些碼可以控制我們的瀏覽器要怎樣把文件顯示出來, 就是你現在所看到的頁面就是用HTML來控制的,它可控制字體的大小,也可以插入連結或圖像。
一個HTML檔稱為HTML document,存檔的副檔名為htm或 html,編寫的方式有很多種, 最原始的方法是用windows內的記事本或各種文書編輯軟體,而現在有一種軟體也是編寫HTML碼, 但具有預覽及插入特效的功能,如Dida 網頁速寫器,編寫完成後記得儲存成*.htm或*.html 即可。
若你想看一個網頁的HTML檔,只要在瀏覽器內按下滑鼠右鍵,再選擇 檢視原始檔(view)即可。
一份標準的HTML文件是由元素所組成的,元素是由標籤(Tag)以及文件內容所組成。 文件內容可以是文字、圖形、甚至是影像、聲音等等。而標籤又是啥東東呢?? 一個開始標籤(< >)是由一個小於符號(<)和一個大於符號(>)所構成的 一個起始標籤中加一道斜線"/"就構成了結束標籤() 而一對標籤是由一個起始標籤和一個結束標籤所構成的。

HTML5到底是什麼?

一般廣義而言的HTML5則包含了HTML、CSS和JavaScript三個部分,不單單只是HTML部分而已,CSS 3和JavaScript也有許多的創新,讓整個網頁程式功能更加繽紛。

離線功能

HTML5透過JavaScript提供了數種不同的離線儲存功能,相對於傳統的Cookie而言有更好的彈性以及架構,並且可以儲存更多的內容。

  • WebStorage -- 比Cookies更大、更有彈性的的儲存
  • Web SQL Database -- 本地端的SQL資料庫
  • Indexed DB -- Key-value的本地資料庫
  • Application Cache -- 將部分常用的網頁內容cache起來

即時通訊

以往網站由於HTTP協定以及瀏覽器的設計,即時的互動性相當的受限,只能使用一些技巧來「模擬」即時的通訊效果,但HTML5提供了完善的即時通訊支援。

  • WebSocket -- 即時的socket連線
  • Web Workers -- 以往JavaScript都是single thread,透過Worker可以有多個運算
  • Notifications -- 原生的提示訊息,類似像OS X的Growl提示

檔案以及硬體支援

不知道大家有沒有發現,在Gmail等新的網頁程式當中,已經可以透過拖拉的方式將檔案作為郵件附件?這就是這部份HTML5檔案的功能中的Drag'n Drop和File API。

  • Drag'n Drop -- HTML元素的拖拉
  • File API -- 讀取使用者本機電腦的內容
  • Geolocation -- 地理定位
  • Device orientation -- 手持裝置的方向
  • Speech input -- 語音輸入

語意化

語意化的網路是可以讓電腦能夠更加理解網頁的內容,對於像是搜尋引擎的優化(SEO)或是推薦系統可以有很大的幫助。

  • New tags -- 新的標籤
  • Application tags -- 也是新的標籤
  • Microdata -- 加入語意的資料讓搜尋引擎等網站可以正確顯示
  • Form type -- 可以加入的type便多了,包含email和tel等屬性,瀏覽器會協助進行資料格式的驗證

多媒體

Audio、Video的標籤支援以及Canvas的功能應該是大家對於HTML5最熟悉的部份了,也是許多人認為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、和瀏覽器上下頁的紀錄修改。

  • DOM API -- 更方便的查詢DOM元件
  • History API -- 瀏覽器的上下頁內容修改,方便AJAX可以保留瀏覽記錄

資訊來源:http://www.inside.com.tw/