簡體   English   中英

為什么在html上刪除doctype會稍微改變屏幕上的某些元素

[英]Why does removing doctype on html slightly shift some on screen elements

對於HTML4到HTML5的轉換,我一直在相互比較我的html4和html5頁面,並且看到在doctype之后擺脫折舊的元素導致屏幕元素有時移動得如此之小。 防爆。 在下面的代碼中,anchor標簽的底部看起來像3像素填充,在調試工具中沒有顯示,但在HTML5中明顯向下移動。

<header>
<a href="javascript:commonSubmit('displayHomePage')"><img class="noBorder" src="images/logo.png" alt="Home" /></a>
<div id="nav">
...

同樣,在非常大的模板生成表中,某些單元格中的某些信息有時會向上或向上移動一個像素或2個像素。 頁面上沒有樣式更改,只需更改doctype即可。

唯一的代碼更改發生,從而導致移位:之前:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

后:

<!DOCTYPE HTML>

正如在w3schools上發現的

<!DOCTYPE>聲明必須是HTML文檔中位於<html>標記之前的第一件事。

<!DOCTYPE>聲明不是HTML標記。 這是向Web瀏覽器發出的有關頁面寫入哪個HTML版本的指令。

基本上,它使瀏覽器知道您正在使用哪個HTML版本來正確呈現元素

之前: 這是HTML 4.01

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

之后: 這是HTML5

<!DOCTYPE HTML>

希望這可以幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM