HTML4與HTML5之間的10個本質區別
HTML5是目前最新的HTML規範,每一個web開發人員將會發現自己需要使用這項新的標準工作。而且,其中很多人會發現,由於HTML4與HTML5之間的區別,新建一個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、新的<canvas>標記代替flash
對於Web使用者來說,Flash既是驚喜也是一種痛苦。所以,一些開發人員對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真正可以實用時候。目前還不是時候。
譯註:儘量尊重原文,並作了一部分意譯,如有不當,敬請指教!
本文翻譯自:http://www.developerdrive.com/2011/08/10-essential-differences-between-html4-and-html5/
相關文章
- HTML4 和 HTML5的10個關鍵區別HTML
- HTML5系列:HTML5與HTML4的區別HTML
- HTML4和HTML5之間的10個主要不同HTML
- HTML5和HTML4的區別HTML
- Linux下su與su -命令的本質區別Linux
- Java中equals與==的本質區別是什麼?Java
- Oracle與OpenJDK之間的區別OracleJDK
- PrepareStatement與Statement之間的區別REST
- Go 中的 channel 與 Java BlockingQueue 的本質區別GoJavaBloC
- 大模型與生成式AI有本質區別大模型AI
- html5非常火,他究竟與html4有何差別?HTML
- GCD與NSOperation之間的區別GC
- PHP abstract與interface之間的區別PHP
- 溫故知新----執行緒之Runnable與Callable介面的本質區別執行緒
- AI智慧與大資料的本質區別是什麼?AI大資料
- 資料化與資訊化的邏輯,有本質的區別
- CEO 和 CTO 沒有本質的區別
- 正向代理和反向代理的本質區別
- VS2008 Debug與Release的本質區別
- html5之div,article,section區別與應用HTML
- Html5和Html4的不同HTML
- 雲與本地部署 ERP 之間的區別
- size resize與capacity reserve之間的區別
- HTML5 SVG與Canvas的區別HTMLSVGCanvas
- Git 和 SVN 之間的五個基本區別Git
- GIT和SVN之間的五個基本區別Git
- 為什麼我說OKR與KPI沒有本質區別?OKRKPI
- UTM與傳統防火牆有什麼本質區別(轉)防火牆
- Oracle 10g各版本之間的區別!Oracle 10g
- 深度學習與機器學習之間區別 - javaworld深度學習機器學習Java
- 創業和打工的最本質區別在哪裡?創業
- 【筆試】陣列、線性表的本質區別筆試陣列
- [譯]HTML attribute與DOM property之間的區別?HTML
- TCP、UDP、HTTP、SOCKET之間的區別與聯絡TCPUDPHTTP
- 一文讀懂統計學與機器學習的本質區別(附案例)機器學習
- 長線交易與短線交易的最本質區別(期貨交易)(ZT)
- 陣列地址與指標之間的區別與聯絡陣列指標
- 大資料分析與機器學習之間的區別與聯絡大資料機器學習