在 Visual Web Developer 的 HTML 編輯器中格式化項目
更新:2007 年 11 月
在 HTML 設計工具中工作時,編輯器可協助您格式化項目。本主題說明可用於標記項目的編輯器格式化功能。
預設格式
根據預設,HTML 編輯器可讓您以想要的方法格式化標記,並以所輸入完全相同的形式保留分行符號和縮排。編輯器包括一些可協助您格式化項目的功能。例如,如果按 TAB 鍵縮排一行,接下來的行也會跟著縮排。您可以使用 SHIFT+TAB 移除縮排。在原始碼檢視和設計檢視之間切換時,會保留您套用至網頁的格式。
您可以設定基本選項,決定原始碼檢視中的編輯器處理定位鍵的方式。如需詳細資訊,請參閱選項對話方塊、文字編輯器、HTML、定位點。
此外,您可以設定一些選項,於輸入時讓編輯器自動插入引號和結尾標記。如需詳細資訊,請參閱選項對話方塊、文字編輯器、HTML、格式。
格式化和目前結構描述
您為編輯器選取的結構描述可以覆寫特定的格式化選項,例如大小寫以及在屬性前後使用引號。例如,如果選取結構描述 XHTML 1.1 Strict,由於該結構描述只支援小寫名稱,因此編輯器會將大寫的標記和屬性名稱轉換為小寫。
指定格式化選項
建立項目時,設計工具會使用您可以設定的特定選項格式化新項目。例如,預設會使用小寫標記名稱建立用戶端項目 (例如 HTML 標記)。會在下列時機套用格式化選項:
從 [工具箱] 將控制項拖曳至網頁。
使用 IntelliSense 在原始碼檢視中建立標記。
在 [屬性] 視窗或屬性產生器中設定值。
從剪貼簿貼上項目。
使用對話方塊 (例如設計檢視中的插入表格對話方塊) 產生標記。
以手動方式格式化選取範圍或文件。
如需設定格式化選項的詳細資訊,請參閱選項對話方塊、文字編輯器、HTML、格式和選項對話方塊、文字編輯器、HTML、其他。
個別標記的格式化選項
您也可以個別針對標記 (Tag) 設定格式化選項,如此可對個別標記 (Tag) 自訂 HTML 設計工具格式化標記 (Markup) 的方式。標記專用格式化可讓您設定下列項目:
標記的結尾方式 (未封閉、自我結尾,或使用不同的結尾標記)。
標記前後和標記內的分行符號。
縮排標記的方式。
大綱選項。
編輯器中標記的顏色標示。
如需詳細資訊,請參閱標記專用選項。
視需要格式化
您可以使用 [編輯] 功能表或快速鍵功能表上的 [格式化文件] 命令,隨時格式化文件或選取範圍。在這個功能表上可用於格式化的其他選項,包括將選取範圍轉換為大寫或小寫,以及將空格轉換為定位鍵 ([選取範圍空白鍵轉定位鍵]) 或將定位鍵轉換為空格 ([選取範圍定位鍵轉空白鍵]) 的選項。以手動方式進行格式化時,編輯器會使用您已設定的格式化選項 (除非已明確覆寫規則,例如轉換大小寫時)。如果變更格式化選項,您可以透過重新格式化文件,將這些格式化選項套用至現有的標記。
保留空格的規則
編輯器的格式化處理序會小心注意到 HTML 在瀏覽器中呈現空格的方式。如果項目的格式會導致變更網頁的呈現方法,編輯器因此不會變更項目的格式。使用在標記 (Tag) 之間不含空格的標記 (Markup) 時,您將會特別注意到編輯器的這個行為。
例如,網頁可能包括兩個 HTML 按鈕的下列標記:
<input type="button" id="b1"><input type="button" id="b2">
呈現網頁時,這兩個顯示的按鈕之間沒有任何空格。如果在編輯器中格式化文件,您可能期望將這兩個標記各自放在本身所在的那一行。但是,將標記放在兩個不同的行上,會在網頁呈現時使得按鈕之間出現空格,因此編輯器不會移除標記。如果以手動方式在標記之間置放空格,由於重新格式化並不會影響按鈕在瀏覽器中呈現的樣子,因此格式化作業會將空格變更為分行符號。
另一個空格規則覆寫格式化的通用例子,是在內容和結束標記之間。例如,文件可能包含下列 table 項目,這些項目都在同一行上:
<table><tr><td>Hello, World</td></tr></table>
如果以手動方式重新格式化文件,則產生的結果如下:
<table>
<tr>
<td>
Hello, World</td>
</tr>
</table>
結尾 </td> 標記沒有移至下一行,因為這樣會影響儲存格呈現的方式。如果以手動方式在 "Hello, World" 和 </td> 標記之間插入空格,然後重新格式化文件,則編輯器會將結尾標記移至下一行。
格式化程式碼內嵌
ASP.NET Web 網頁中的用戶端指令碼和伺服端程式碼,通常會根據語言編輯器的規則格式化。歸位字元 (Carriage Return) 行為、產生新行、縮排等都是由各別的語言格式子 (Formatter) 控制。例如,Visual Basic 語言格式子會自動在 Function 宣告之後縮行。
在原始碼檢視中,指令碼區塊會相對於其父項目而縮排一層。內嵌運算式 (以 <%#、<%$,或 <%= 為開頭) 不會予以格式化,而是以您輸入時的格式呈現。不過,如果輸入個別以 <% %> 分隔符號 (Delimiter) 分隔的陳述式區塊,編輯器會使用適當語言的縮排規則,將此區塊當做一個區塊進行格式化。