HTML5跟HTML有哪些區別?
html是Hyper Text Markup Language 的簡稱,這是一種使用標記標籤描述網頁的標記語言(markup language),標準通用標記語言下的一個運用。
HTML5最先由WHATWG(Web超文本應用技術工作組)命名的一種超文本標記語言,隨後和W3C的xhtml2.0(標準)相結合,產生的最新一代的超文本標記語言。(HTML5草案的前身名為Web Applications 1.0。於2004年被WHATWG提出,於2007年被W3C接納,並成立了新的HTML工作團隊。)可以理解為:HTML5 ≈ HTML4.0+CSS3+JS+API。(PS:html是沒有1.0版本的,雖然曾經有這個概念,但是並沒有正式發布過,也沒有使用html1.0來進行命名。這裡的HTML4.0是在現在最新的html的規範標準。)
HTML5有兩大特點:
- ?首先,強化了Web網頁的表現性能。除了可描繪二維圖形外,還準備了用於播放視頻和音頻的標籤。
- ?其次,追加了本地資料庫等Web應用的功能。
而且HTML5擁有更多種類,功能繁多的新技術和規範。比如:
- ?使用canvas (畫布)元素進行繪製;
- ?使用video和audio元素添加流媒體;
- ?在線編輯頁面並檢査拼寫;
- ?在Web應用程序屮使用拖曳功能;
- ?更多的HTML5表單特性;
- ?語義化布局常用標籤(例如article、section、nav)創建語義分區,語義化能讓頁面的內容結構化,結構更清晰,便於對瀏覽器、搜索引擎解析,即使在沒有樣式CSS情況下也以一種文檔格式來顯示,並且是非常容易容易閱讀的,而且搜索引擎的爬蟲也依賴於HTML標記來確定上下文和各個關鍵字的權重,利於SEO(類似與網路競價排行,不過不需要花錢),並且呢,語義化標籤使得人對網站的維護更加的便捷。
- ?HTML5沒有嚴格的要求屬性必須加引號,閉合不閉合,但是建議加上引號和閉合標籤
- ?語義化布局常用標籤
- ......更多規範和新技術請自行查閱相關文檔。
HTML5(text/html)瀏覽器將在錯誤語法的處理上更加靈活。HTML5在設計時保證舊的瀏覽器能夠安全的忽略掉新的HTML5代碼。與HTML4.01相比,HTML5給出了解析的詳細規則,力圖讓不同的瀏覽器即使在發生語法錯誤時也能返回相同的結果。
相比呆板的html,HTML5顯得更加靈活。HTML5元素可以擁有事件屬性,使用這些屬性可以在瀏覽器中觸發,比如當用戶單擊元素時觸發一段Javascript動作(可單一或者系列的動作)。給靜態頁面添加更加豐富多彩的動畫效果,提升用戶交互觀感。下面列出的事件屬性,可以把它們入 HTML 標籤來定義事件行為。 HTML5 中的新事件屬性:onabort, onbeforeunload, oncontextmenu, ondrag, ondragend, ondragenter, ondragleave, ondragover, ondragstart, ondrop, onerror, onmessage, onmousewheel, onresize, onscroll, onunload。
現在的web前端開發的靜態網頁一般都是html4.0,html標籤和屬性是html5規範的基礎。然而HTML5還包括很多其他的編程介面,而嚴格來說,這些介面並不是HTML5規範的一部分,例如地理定位、歷史API。從此也可以說HTML5比html具有更大的包容性。所談到的html4.0既是html。
另外HTML5與html相比來說。HTML5不基於SGML,因此不需要對DTD進行引用,但是需要doctype來規範瀏覽器的行為,讓瀏覽器能夠以HTML5的方式來運行,而HTML4基於SGML,所以需要對DTD進行引用才能告知瀏覽器文檔所使用的文檔類型是什麼。
然而最新的並不代表是最適用的,誠然,HTML5能玩出很多「花」來,但是並不是所有用戶都能完美支持HTML5的,HTML5裡面有很多特性在PC端低版本瀏覽器上是不支持的。而移動端瀏覽器已經支持HTML5了,還有就是訪問CSDN的人群基本上沒有使用IE8以下的瀏覽器了。
推薦閱讀:
※準備學習 C, 想知道 HTML, CSS, JS, Ajax, JAVA, C 是做什麼的?
※程序員討厭面試被問一些基礎問題么?
※WEB 前端菜鳥,感覺很迷茫,該怎麼做?