HTML5 為什麼不直接省略標準類型聲明 !Doctype ?
01-26
一向注重簡潔的 HTML5 為什麼沒有將這裡省去?
反正每次都是輸入的都是 &
看見 HTML5 這詞兒就頭疼
業內搞的這玩意指代太寬泛了不知道你說的是廣義還是狹義上的
也就範范說下得了
畢竟是偶拉屎時候爪機隨便答答的么doctype 的存在只是歷史原因
從 HTML 到 XHTML 過度時候需要有個鳥玩意來給UA標示出這玩意到底是個毛HTML 就沒XHTML 根據 pubicID 和 systemID 來讓UA區分是否需要UA按嚴格XHTML方式處理但是UA才不鳥它只根據這玩意區分怎麼渲染細節也就是所謂的標準渲染
近乎標準渲染怪異渲染三種到HTML5時候
XHTML 基本沒人鳥了doctype 其實可以去但是UA認這個得兼容HTML(4)啊去了HTML5渲染不就逆歷史了whatwg里各大廠商一合計
發現哈我靠巧了UA實現判斷doctype過程中最後兜底的都是publicID 和 systemID沒有光剩個 doctype html 的時候大家都是把這個歸位給標準渲染模式得咧
那就 留個光桿 doctype 給HTML5完美兼容以前了就喏
現實就這樣了要省略你依然可以省略,但不同的是,省略之後,瀏覽器對頁面的渲染或許各有各的看法。
你不寫,瀏覽器怎麼知道你是html5,,,
因為瀏覽器的標準其實有好多套,w3c是公認的標準,某些瀏覽器還弄了一套自己的標準,你要不寫文檔類型,瀏覽器會把你玩壞的!瀏覽器其實只看!DOCTYPE至於這後面都寫什麼它才不管,主體按照w3c的標準來,但是在細節上各個瀏覽器的實現還是略有不同,而你的語法就算是非標準語法,也會被自動糾正成標準語法
在html4.01中,
聲明引用DTD,因為HTML4.01基於SGML。DTD規定了標記語言的規則,這樣瀏覽器才能正確的呈現內容。
html5不基於SGMl,所以不需要引用DTD。
就像給他個變數名,後面是他的值,瀏覽器只要檢測一下變數名,就能知道是什麼文檔類型
推薦閱讀《HTML5設計原理》
如果當初純文本也約定一個&,那麼今天或許就不會出現那麼多亂碼需要處理了。所以雖然約定大於配置,但是適當的配置可以避免太多麻煩。現在HTML5很有自信一統天下,十年後二十年後呢?肯定還會有更新更牛的技術。
推薦閱讀:
※一個數字鍵盤引發的血案——移動端H5輸入框、游標、數字鍵盤全假套件實現
※opengl/webgl 可以部分重繪嗎?
※推動HTML5生態發展,Gospel還能做什麼?
※手把手教你擼一個跑男動畫 順便抽絲剝繭CSS3動畫奧秘
※如何解剖一個網站?