所以,如果我有一個HTML的標題這樣爲什麼Visual Studio的格式文檔工具將標題標籤放在兩行?
<h2>A Heading</h2>
,我跑Edit -> Format Document
它結束了看起來像這樣
<h2>
A Heading</h2>
這是爲什麼?它不會對其他塊元素執行此操作,但它可以對其他內聯元素執行此操作(例如<label>
)。
更新:爲了澄清,我的意思是這是爲什麼默認的,不是在哪裏設置來改變這種
所以,如果我有一個HTML的標題這樣爲什麼Visual Studio的格式文檔工具將標題標籤放在兩行?
<h2>A Heading</h2>
,我跑Edit -> Format Document
它結束了看起來像這樣
<h2>
A Heading</h2>
這是爲什麼?它不會對其他塊元素執行此操作,但它可以對其他內聯元素執行此操作(例如<label>
)。
更新:爲了澄清,我的意思是這是爲什麼默認的,不是在哪裏設置來改變這種
它確實是因爲這些都是它的默認設置。在較老的瀏覽器中,有時在子元素之後的新行上有一個塊或內聯元素的結束標記(實際上留下空白,如非中斷空間或空文本節點)會影響頁面的呈現方式。我之前遇到過麻煩。例如,下面可以渲染正確的問題,如果你的錨有邊框或留白:
<a>
<img src="..." />
</a>
有時會在鏈路的底部額外的間距。它更改爲以下移除額外間距:
<a><img src="..." /></a>
基本上,高飛格式解決了在劣質的CSS支持像IE6瀏覽器的一些渲染的問題。如果你有IE6,請看我創建的this JSFiddle來說明問題。在圖像底部存在額外的間距,錨標籤存在於它們自己的線上。
如果格式化選擇標記,看到了密切的標籤還沒有被移動到一個單獨的線 - 那是因爲有前面的標記結束之間沒有空格和終止標籤,因此VS正在小心不要改變它以避免改變渲染語義。
因此,儘管在Visual Studio中設計器的格式設置或輸出可能會很醜,但它比正確格式化標記(如XHTML)更適用於更多瀏覽器。
要更改在Visual Studio中的格式默認設置,請訪問:
Tools > Options > Text Editor > HTML > Format > Tag Specific Options...
在「默認設置」,改變「換行符」選項「前後」爲客戶端和兩個服務器「標籤支持內容」選項。
是的,我從來沒有理解默認的HTML格式設置。他們中的大多數人相當可惡,海事組織。 – Chris 2009-05-22 00:05:01