TML5 不基于 SGML(我記不住,所以叫它三顧茅廬),因此不需要對DTD進行引用,但是需要doctype來規范瀏覽器的行為(讓瀏覽器按照它們應該的方式來運行);
而HTML4.01基于SGML,所以需要對DTD進行引用,才能告知瀏覽器文檔所使用的文檔類型。
補充:SGML(Standard Generalized Markup Language,即標準通用標記語言)是國際上定義電子文檔和內容描述的標準。它源于1969年IBM公司開發的文檔描述語言GML,GML主要用來解決不同系統中文檔格式不同的問題。后經過多年發展,1986年經ISO批準為國際標準ISO8897,并被稱為SGML。 制定SGML的基本思想是把文檔的內容與樣式分開。在SGML中,標記分兩種:一種用來描述文檔顯示的樣式,稱為程序標記;另一種用來描述文檔中語句的用途,稱為描述標記。一個SGML文件通常分三個層次:結構、內容和樣式。結構為組織文檔的元素提供框架,內容是信息本身,樣式控制內容的顯示。 SGML的平臺無關性、結構化、可擴展等特性,使得它使用范圍很廣,被許多大型公司用來創建和發布信息。
化為最簡:
HTML4.01:
TML5的語法變化
HTML5中,語法發生了很大的變化。或許有人會抱著異常驚訝和不安地問“HTML普及到何種程度”“根本的語法發生了變化,會有多大影響”。
只是,HTML5的“語法變化”和其他編程語言所謂的語法變更意義有所不同。為什么這么說呢?原因比較特殊,因為以前的HTML幾乎沒有遵循規范實現的Web瀏覽器。
現有瀏覽器與規范背離
HTML的語法是在SGML(Standard Generalized Markup Language)語言的基礎上來規定的。但是由于SGML的語法非常復雜,文檔結構解析程序的開發也不太容易,多數Web瀏覽器不作為SGML解析器運行。由此,HTML規范中雖然要求“應遵循SGML的語法”,但實際情況卻是遵循規范實現的Web瀏覽器幾乎不存在。
規范向實現靠攏
如上所述,HTML5中提高Web瀏覽器間的兼容性是重大的目標之一。要確保兼容性,必須消除規范與實現的背離。因此HTML5以近似現有的實現,重新定義了新的HTML語法,使規范向實現靠攏。
由于文檔結構解析的算法也有著詳細的記載,使得Web瀏覽器開發者可以專注于遵循規范去進行實現工作。在新版本的FireFox和WebKit(Nightly Builder版)中,已經內置了遵循HTML5規范的解析器。IE(Internet Explorer)和Opera也為了能夠提供更好的兼容性實現而緊鑼密鼓地努力著。
了解更多前端知識,可以點擊下方鏈接和小編一起學習喲~
「鏈接」
TML5是HTML最新的修訂版本,由萬維網聯盟(W3C)于2014年10月完成標準制定。目標是取代1999年所制定的HTML 4.01和XHTML 1.0標準,以期能在網際網路應用迅速發展的時候,使網路標準達到符合當代的網路需求。廣義論及HTML5時,實際指的是包括HTML、CSS和JavaScript在內的一套技術組合。它希望能夠減少網頁瀏覽器對于需要外掛程式的豐富性網路應用服務(Plug-in-Based Rich Internet Application,RIA),例如:Adobe Flash、Microsoft Silverlight與Oracle JavaFX的需求,并且提供更多能有效加強網路應用的標準集。
HTML5添加了許多新的語法特征,其中包括<video>、<audio>和<canvas>元素,同時整合了SVG內容。這些元素是為了更容易的在網頁中添加和處理多媒體和圖片內容而添加的。其它新的元素如<section>、<article>、<header>和<nav>則是為了豐富文檔的數據內容。新的屬性的添加也是為了同樣的目的。同時也有一些屬性和元素被移除掉了。一些元素,像<a>、<cite>和<menu>被修改,重新定義或標準化了。同時APIs和DOM已經成為HTML5中的基礎部分了。HTML5還定義了處理非法文檔的具體細節,使得所有瀏覽器和客戶端程序能夠一致地處理語法錯誤。
發展歷史
網頁超文本技術工作小組(WHATWG)于2004年開始制定新標準。在當時,HTML 4.01自2000年來沒有更新,以及全球資訊網協會(W3C)正在將未來的發展重點放在XHTML 2.0。2009年,W3C允許XHTML 2.0工作組章程結束過期并且決定不再續訂。W3C與WHATWG合作共同為發展HTML5而努力。
2004年6月,Mozilla基金會和Opera軟體公司在全球資訊網協會(W3C)所主辦的研討會上提出了一份立場文件,其重點是開發與現有瀏覽器向后相容的技術,包括Web Forms 2.0最初草案規范。研討會最后以——8票贊成,14票反對——否決繼續對HTML的開發工作。這引起一些人的不滿,在研討會之后,網頁超文本技術工作小組(WHATWG)立即根據該立場文件成立,第二個草案,Web Applications 1.0也公布了。后來這兩種規范合并形成HTML5。2007年,獲得W3C接納,并成立了新的HTML工作團隊。2008年1月22日,第一份公開工作草案發布。
盡管HTML5已經在網絡開發人員中非常出名了,但是它成為主流媒體的一個話題是在2010年的4月,當時蘋果公司的CEO喬布斯發表一篇題為“對Flash的思考”的文章,指出隨著HTML5的發展,觀看影片或其它內容時,Adobe Flash將不再是必須的。這引發了開發人員間的爭論,包括HTML5雖然提供了加強的功能,但開發人員必須考慮到不同瀏覽器對標準不同部分的支持程度的不同,以及HTML5和Flash間的功能差異。
特點
標記
HTML5提供了一些新的元素和屬性,反映典型的現代用法網站。其中有些是技術上類似<div>和<span>標簽,但有一定含義,例如<nav>(網站導航塊)和<footer>。這種標簽將有利于搜索引擎的索引整理、小螢幕裝置和視障人士使用。同時為其他瀏覽要素提供了新的功能,通過一個標準接口,如<audio>和<video>標記。一些過時的HTML 4.01標記將取消,其中包括純粹用作顯示效果的標記,如<font>和<center>,因為它們已經被CSS取代。還有一些透過DOM的網絡行為。
盡管和SGML在標記上的相似性,HTML5的句法并不再基于它了,而是被設計成向后兼容對老版本的HTML的解析。它有一個新的開始列看起來就像SGML的文檔類型聲明,<!DOCTYPE HTML>,這會觸發和標準兼容的渲染模式。在2009年1月5日,HTML5添加了Web Form 2.0的內容,HTML5開始發展起來。
新的API
HTML5相關APIs
除了原先的DOM接口,HTML5增加了更多樣化的應用程序接口(API):
Canvas
定時媒體播放
離線
可編輯內容
拖放
歷史
MIME和協議處理程序時表頭登記
微數據
網路訊息
網路存儲
以上技術盡管是WHATWG HTML說明文檔的內容,但并沒有全部包括在W3C HTML5的說明文檔里。一些相關的技術,像下面所列的,并沒有包括在這2份文檔中的任何一份中。W3C給這些技術單獨出版了說明文檔。
地理位置
網頁SQL數據庫 ─ 本地SQL數據庫(不再維護)
IndexedDB
文件─ 處理文件上傳和操縱文件
目錄和文件系統 ─ 這個API是為了滿足客戶端在沒有好的數據庫支持情況下存儲要求
文件寫入 ─ 從網絡應用程序向文件里寫內容
網路音頻
ClassList
網路加密
WebRTC
一個普遍的誤解是HTML5能夠在網頁中提供動畫效果,這是不對的,動畫效果是需要配合JavaScript和CSS。然而靜態HTML5配合CSS可以表示出覆雜的排版結構而且原生支援與影片的混合與控制(控制一般由JavaScript執行),因此簡單可以把HTML5單位時間的狀態理解為動畫的關鍵影格。
XHTML5(XML-serialized HTML5)
XHTML5是對HTML5的XML序列化。XML文檔必須被設置為XML互聯網文件類型,像application/xhtml+xml或者application/xml。XHTML5要求像XML一樣嚴格的格式化的語法。在XHTML5中,HTML5的<!DOCTYPE HTML>可有可無的。
XHTML5并非XHTML的第5版,沒有自己獨立的標準規范,而是HTML5的一種序列化方式。XHTML1.x和2.0使用的名字是Extensible HyperText Markup Language,不同于XHTML5。
異常處理
HTML5在設計時保證舊的瀏覽器能夠安全地忽略掉新的HTML5代碼。與HTML4.01相比,HTML5給出了解析的完整規則,讓不同的瀏覽器即使在發生語法錯誤時也能返回完全相同的結果。
普及率
根據2011年9月30日發布的一份報告,全球排名前100的網站中有34個網站使用HTML5──主要是搜尋引擎與社群網站。2013年8月發布的另一份報告顯示,財富美國500強企業中已有多達153家采用HTML5。
HTML 4.01和XHTML 1.x的差異
以下為大略的不同之處,與例子:
文件類型聲明(<!DOCTYPE>)僅有一型:<!DOCTYPE HTML>。
新的解析順序:不再基于SGML。
新的元素:section, video, progress, nav, meter, time, aside, canvas, command, datalist, details, embed, figcaption, figure, footer, header, hgroup, keygen, mark, output, rp, rt, ruby, source, summary, wbr。
input元素的新類型:date, email, url等等。
新的屬性:ping(用于a與area), charset(用于meta), async(用于script)。
全域屬性:id, tabindex, repeat。
新的全域屬性:contenteditable, contextmenu, draggable, dropzone, hidden, spellcheck。
移除元素:acronym, applet, basefont, big, center, dir, font, frame, frameset, isindex, noframes, strike, tt。
*請認真填寫需求信息,我們會在24小時內與您取得聯系。