實用工具

HTML 格式化工具

替 HTML 縮排,連同 <script> 與 <style> 中的 JavaScript 和 CSS 一併處理,<pre> 與 <textarea> 則原封不動。

瀏覽器本機執行程式碼轉換8996
免費

輸入

0 B

結果

結果會顯示在這裡。

伺服器端算繪的網頁、電子郵件範本,以及從爬蟲取得的 HTML,通常都擠成一長行。這裡用 js-beautify 的 HTML 美化工具替標記重新縮排,並把每個行內的 <script> 與 <style> 區塊交給它的 JavaScript 和 CSS 格式化工具處理,讓嵌入的程式碼也變得可讀。對空白敏感的元素會被尊重:<pre> 與 <textarea> 的內容完全保持原樣,<b>、<a> 這類行內元素則留在它們所在的那行文字中。

它是怎麼運作的

  • 過長的行會在你指定的欄數換行;設為 0 則永不換行。
  • 屬性預設留在標籤那一行,也可以每個屬性一行——對齊排列,或讓結尾的角括號單獨一行。
  • <head> 與 <body> 預設與 <html> 對齊,這是常見的慣例;開啟縮排選項會讓它們內縮一層。

你的資料去了哪裡

哪也沒去。本工具完全在你的瀏覽器裡執行:你貼上的文字由頁面處理,不會傳輸到任何伺服器,也不會寫進任何紀錄。

本工具免費且免登入,執行結果只存在於你目前的頁面裡,不會被儲存到任何地方。

它要花多少

本工具完全免費,不需要登入,也不消耗點數。

常見問題

格式化會改變網頁的呈現方式嗎?
幾乎在所有情況下都不會。區塊元素之間的空白不影響版面,行內元素會留在原本那一行,文字之間不會多出空隙。<pre> 與 <textarea> 中的內容空白是可見的,所以絕不會被更動。
能處理 JSX、Vue 或 Handlebars 範本嗎?
js-beautify 能識別 Handlebars 的 {{ }} 和 Django 風格的 {% %} 標籤,足以讓它們保持完整。JSX 與 Vue 單一檔案元件則需要能真正解析它們的格式化工具,例如 Prettier,否則其中嵌入的運算式可能會被錯誤地調整空白。
為什麼輸出的巢狀結構還是錯的?
美化工具只會替輸入的內容重新縮排,並不會修復它。一個未關閉的 <div> 會被當成仍然開啟來縮排,因此輸出的縮排會準確地顯示錯誤出在哪裡。如果需要正式的判定,請使用 W3C 驗證器。

背後的開源專案

本工具執行在 beautifier/js-beautify 之上,以 MIT 授權發布。如果你需要在自己的程式裡實作同樣的能力,直接用這個函式庫。

beautifier/js-beautify

也常被稱作

  • html 格式化
  • html 美化
  • html 線上格式化
  • html pretty print
  • html 縮排
  • html formatter