HTML4和HTML5之間的10個主要不同

測試5555發表於2011-11-17

HTML5是最新的HTML標準,或遲或早,所有的web程式設計師都會發現需要使用到這個最新的標準,而且,很多人都會感覺到,重新開發一個HTML5的網站,要比把一個網站從HTML4遷移到HTML5上容易的多,這是因為這兩個版本之間有很大不同之處。

事實上,HTML5並沒有對HTML4做什麼重大的修改,它們很多東西都是相似的。

可是,其中有一些很重要的區別你需要知道。下面列出的就是一些HTML4和HTML5之間主要的不同之處(並不是全部,全部列出來是不可能的):

1. HTML5標準還在制定中

這頭一個不同之處顯而易見,但非常重要,我需要先從它開始。也許你已經注意到了關於HTML5很酷的言論到處都是,但是事實情況是,HTML5是一個還未完成的標準。HTML4已經有10歲了,但它仍是當前正式的標準的事實沒有改變。

另一方面,HTML5仍處在早期階段,以後的修改會不斷的出現。你必須考慮到這些,因為你在網站上使用的這些新增加或修改的網頁元素會每年都出 現一些變化,你需要不停的更新升級你的網站,這可不是你希望的。這就是目前為止,你最好在產品裡使用HTML4,只在實驗裡使用HTML5的原因。

2. 簡化的語法

更簡單的doctype宣告是HTML5裡眾多新特徵之一。現在你只需要寫<!doctype html>,這就行了。HTML5的語法相容HTML4和XHTML1,但不相容SGML。

3. 一個替代Flash的新 <canvas> 標記

對於Web使用者來說,Flash既是一個驚喜,也是一種痛苦。有很多的Web開發人員對HTML5對Flash產生的威脅很不滿。但對於那些忍 受著要花幾年時間載入和執行的臃腫的Flash視訊的人來說,用新的 <canvas> 標記生成視訊的技術已經到來。

目前, <canvas> 標記並不能提供所有的Flash具有的功能,但假以時日,Flash必將從web上淘汰。我們拭目以待,因為很多人還並不認同這種觀點。

4. 新的 <header> 和 <footer> 標記

HTML5的設計是要更好的描繪網站的解剖結構。這就是為什麼這些<header> 和
<footer> 等新標記的出現,它們是專門為標誌網站的這些部分設計的。

在開發網站時,你不在需要用<div>標記來標註網頁的這些部分。

5. 新的 <section> 和 <article> 標記

跟<header> 和 <footer>標記類似,HTML5中引入的新的<section> 和 <article> 標記可以讓開發人員更好的標註頁面上的這些區域。

據推測,除了讓程式碼更有組織外,它也能改善SEO效果,能讓搜尋引擎更容易的分析你的頁面。

6. 新的 <menu> 和 <figure> 標記

新的<menu>標記可以被用作普通的選單,也可以用在工具條和右鍵選單上,雖然這些東西在頁面上並不常用。

類似的,新的 <figure> 標記是一種更專業的管理頁面上文字和影像的方式。當然,你可以用樣式表來控制文字和影像,但使用HTML5內建的這個標記更適合。

7. 新的 <audio> 和 <video> 標記

新的<audio> 和 <video> 標記可能是HTML5中增加的最有用處的兩個東西了。正如標記名稱,它們是用來嵌入音訊和視訊檔案的。

除此之外還有一些新的多媒體的標記和屬性,例如<track>,它是用來提供跟蹤視訊的文字資訊的。有了這些標記,HTML5使Web2.0特徵變得越來越友好。問題在於,在HTML5還未被廣泛的接受之前,Web2.0還是老的Web2.0。

8. 全新的表單設計

新的 <form> 和 <forminput> 標記對原有的表單元素進行的全新的修改,它們有很多的新屬性(以及一些修改)。如果你經常的開發表單,你應該花時間更詳細的研究一下。

9. 不再使用 <b> 和 <font> 標記

對我個人來說,這是一個讓我不太理解的改動。我並不認為去除 <b> 和 <font>標記會帶來多大的好處。我知道,官方的指導說這些標記可以通過CCS來做更好的處理,但這樣一來,為了在文章一兩個地方出現的這 種標記,你就需要在獨立的css和文字兩個地方來實現這一的功能,豈不笨拙。也許我們以後會習慣這種方法。

10. 不再使用 <frame>, <center>, <big> 標記

事實上,我已經記不清曾經何時用過這些標記了,所以,我並不為去除這些標記感到悲哀。相同的原因,有更好的標記能實現它們的功能——這很好,任何作廢的標記從標準中剔除都是受歡迎的。

這10個HTML5和HTML4之間的不同只是整個新的規範中的一小部分。除了這些主要的變動外,我還可以略提一下一些次要的改動,比如修改了<ol> 標記的屬性,讓它能夠倒排序,對<u>標記也做了修改。

所有這些次要的改動數量眾多。而且新的修改也在不斷的增加,因此,如果你想實時跟蹤最新的動向,你需要經常的檢視w3.org的HTML4 和 HTML5之間的不同這個頁面。如果你很心急,想在你的工作中使用這些新的標記和屬性,我勸告你最好只是做實驗,原因已經說的很清楚了,這些新標記和新屬性在將來也許會有很大的改變,所以,除非你不斷的更新你的程式碼,它們很可能會過期失效。

儘管如今大多數流行的瀏覽器的最新版都支援HTML5,但有些新的(或修改的)標記和屬性它們並不支援,所以你的網頁在使用者的螢幕上有可能前後顯示的不一致。耐心等待,等待HTML5真正可以實用時候。目前還不是時候。


相關文章