HTML5與微信開發(1)-HTML標籤語法變化和使用概念

什麼是HTML5

HTML5 是下一代 HTML 標準。
HTML , HTML 4.01的上一個版本誕生於 1999 年。自從那以後,Web 世界已經經歷了鉅變。
HTML5 仍處於完善之中。然而,大部分現代瀏覽器已經具備了某些 HTML5 支持。


HTML5是如何發展的

HTML5 是 W3C 與 WHATWG 合作的結果,WHATWG 指 Web Hypertext Application Technology Working Group。
WHATWG 致力於 web 表單和應用程序,而 W3C 專注於 XHTML 2.0。在 2006 年,雙方決定進行合作,來創建一個新版本的 HTML。
HTML5草案的前身名爲 Web Applications 1.0,於2004年被WHATWG提出,於2007年被W3C接納,併成立了新的 HTML 工作團隊。
HTML 5 的第一份正式草案已於2008年1月22日公佈。HTML5 仍處於完善之中。然而,大部分現代瀏覽器已經具備了某些 HTML5 支持。
2012年12月17日 萬維網聯盟(W3C)正式宣佈凝結了大量網絡工作者心血的HTML5規範已經正式定稿。根據W3C的發言稿稱:“HTML5是開放的Web網絡平臺的奠基石。”
2013年5月6日 HTML 5.1正式草案公佈。該規範定義了第五次重大版本,第一次要修訂萬維網的核心語言:超文本標記語言(HTML)。在這個版本中,新功能不斷推出,以幫助Web應用程序的作者,努力提高新元素互操作性。
2012年12月27日至今 進行了多達近百項的修改,包括HTML和XHTML的標籤,相關的API、Canvas等,同時HTML5的圖像img標籤及svg也進行了改進,性能得到進一步提升。


HTML5新特新

HTML5 中的一些有趣的新特性:
1、用於繪畫的 canvas 元素
2、用於媒介回放的 video 和 audio 元素
3、對本地離線存儲的更好的支持
4、新的特殊內容元素,比如 article、footer、header、nav、section
5、新的表單控件,比如 calendar、date、time、email、url、search


HTML5瀏覽器支持

最新版本的 Safari、Chrome、Firefox 以及 Opera 支持某些 HTML5 特性。Internet Explorer 9 將支持某些 HTML5 特性。


HTML5與HTML4的區別

1、概念的變化:HTML5專注內容和結構,而不專注內容

<header>
<hgroup>導航數據</hgroup>
</header>
<nav>菜單</nav>
<article>
<h1>HTML5與微信開發(1)-HTML標籤語法變化和使用概念</h1>
</article>

爲什麼這麼說呢,之前我們寫HTML代碼時候,基本上是想怎麼寫就怎麼寫,只要是頁面做的漂亮就行,沒有什麼規範。HTML5就不一樣,HTML5 除了表示出規定的樣式,還要注重內容和結構,而不注重外在的表現。外在的表現CSS就可以做的很好了,用不着HTML去做。以後我會單獨拿出一個版塊來介紹CSS,大家先不要着急。

還有一個大家有疑問了,我們使用HTML5做出的樣式我們使用HTML4/4.0/4.1都能很好地實現,我們爲什麼還使用HTML5呢?這個內容到底專注到什麼地方?

我就來給大家解釋一下,比如我們上邊這幾行代碼,裏面的標籤大家幾乎都不認識,但是大家才應該也能猜到,< header>應該是頭部,< nav>
應該是側邊欄菜單,< article>應該是內容。但是這些標籤都不帶樣式,和一個div標籤沒什麼區別,我們爲什麼不用div標籤呢?大家想啊,我們使用div標籤的時候是不是需要定義div的名稱或者class才能定義div的樣式,定義名稱的時候根本就沒有規範,有人命名header,有人命名head,有人直接命名toubu或者first……五花八門,什麼樣的也有,你說瀏覽器怎麼去識別你編寫的HTML的結構,怎麼提取內容?所以說在HTML5中樣式已經不是最重要的了,結構和內容纔是最重要的。

2、聲明與標籤:HTML5更加的簡潔
<1>HTML4

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
>
</html>

<2>HTML5聲明

<!DOCTYPE HTML>
<html>
<meta charset="utf-8">
</html>

簡潔太多了,在學HTML的時候,除了,後面的那一大坨代碼我都不知道是幹什麼的。我查了一下資料:

聲明必須是 HTML 文檔的第一行,位於 < html> 標籤之前。

聲明不是 HTML 標籤;它是指示 web 瀏覽器關於頁面使用哪個 HTML 版本進行編寫的指令。

在 HTML 4.01 中, 聲明引用 DTD,因爲 HTML 4.01 基於 SGML。DTD 規定了標記語言的規則,這樣瀏覽器才能正確地呈現內容。
HTML5 不基於 SGML,所以不需要引用 DTD。

HTML 5

HTML 4.01 Strict

該 DTD 包含所有 HTML 元素和屬性,但不包括展示性的和棄用的元素(比如 font)。不允許框架集(Framesets)。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

HTML 4.01 Transitional

該 DTD 包含所有 HTML 元素和屬性,包括展示性的和棄用的元素(比如 font)。不允許框架集(Framesets)。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd">

HTML 4.01 Frameset

該 DTD 等同於 HTML 4.01 Transitional,但允許框架集內容。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" 
"http://www.w3.org/TR/html4/frameset.dtd">

XHTML 1.0 Strict

該 DTD 包含所有 HTML 元素和屬性,但不包括展示性的和棄用的元素(比如 font)。不允許框架集(Framesets)。必須以格式正確的 XML 來編寫標記。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

XHTML 1.0 Transitional

該 DTD 包含所有 HTML 元素和屬性,包括展示性的和棄用的元素(比如 font)。不允許框架集(Framesets)。必須以格式正確的 XML 來編寫標記。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

XHTML 1.0 Frameset

該 DTD 等同於 XHTML 1.0 Transitional,但允許框架集內容。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

HTML5語法標籤

(1)不允許寫的結束符的標籤:area、basebr、col、command、Embed、hr、img、input、keygen、link、meta、param、source、Track、wbr
(2)可以省略結束符的標籤:li、dt、dd、p、rt、optgroup、option、Colgroup、thread、tbody、tr、td、th
(3)可以完全省略的標籤:html、head、body、colgroup、tbody


HTML5新增標籤

<article>  標記定義一篇文章
<aside>    標記定義頁面內容部分的側邊欄
<audio>    標記定義音頻內容
<canvas>   標記定義圖片
<command>  標記定義一個命令按鈕
<datalist> 標記定義一個下拉列表
<details>  標記定義一個元素的詳細內容
<dialog>   標記定義一個對話框(會話框)
<embed>    標記定義外部的可交互的內容或插件
<figure>   標記定義一組媒體內容以及它們的標題
<footer>   標記定義一個頁面或一個區域的底部
<header>   標記定義一個頁面或一個區域的頭部
<hgroup>   標記定義文件中一個區塊的相關信息
<keygen>   標記定義表單裏一個生成的鍵值
<mark>     標記定義有標記的文本
<meter>    標記定義 measurementwithin apredefinedrange
<nav>      標記定義導航鏈接
<output>   標記定義一些輸出類型
<progress> 標記定義任務的過程
<rp>       標記是用在Rubyannotations 告訴那些不支持Ruby元素的瀏覽器如何去顯示
<rt>       標記定義對rubyannotations的解釋
<ruby>     標記定義 rubyannotations.
<section>  標記定義一個區域
<source>   標記定義媒體資源
<time>     標記定義一個日期/時間
<video>    標記定義一個視頻

HTML5的簡單示例

<!DOCTYPE html>
<head>
<meta charset=utf-8>
<title>頁面結構</title>
<style type="text/css">
    header,nav,article,footer {border:solid 1px #666;padding:5px} 
    header{width:500px} 
    nav{float:left;width:60px;height:300px} 
    article{float:left;width:428px;height:300px} 
    footer{clear:both;width:500px} 
</style>
</head>
<body>
    <header>
        <hgroup>導航相關數據</hgroup>
    </header>
    <nav>菜單</nav>
    <article>
        <h1>標題:HTML5專題視頻教程</h1>
        發佈日期:<time>19:00</time>
        <time datetime="2013-2-14">情人節</time>
        <p>測試相關內容</p>
    </article>
    <footer>
        <address>地址:xx省xxx市xxx</address>
    </footer>
</body>
</html>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章