HTML 實體

編解碼

將保留 HTML 字元編碼為實體,或將 HTML 實體解碼為可讀文字,適用於片段、CMS 內容和範本。

HTML 實體跳脫不是完整的 XSS 清理器——只改變表示形式。處理僅在瀏覽器中執行。

命名使用 & / < / > / ";數字使用 & / < / > / "。解碼兩者都接受。跳脫不是完整的 XSS 清理。

  • 輸入0
  • 輸出0
  • 選項命名 (&)

輸入

輸出

這個工具是什麼?

將保留字元(&<>"')編碼為 HTML 實體,或將實體解碼為可讀文字。編碼時可選擇 命名&amp;&lt;)或 數字&#38;&#60;);解碼兩者都接受。

文字、屬性、腳本、CSS、XML 規則並不相同。適合檢查片段、CMS 與訂閱源;不可信 HTML 仍需框架跳脫與可信 sanitizer。轉換僅在瀏覽器中執行。

常見用途

  • 在文件或部落格中依字面顯示標記,避免被當成標籤解析
  • 檢查或修復 CMS/WYSIWYG 的雙重編碼(&amp;amp;
  • 為 RSS/Atom 等訂閱源準備需跳脫 & 的標題或描述

如何使用

  1. 選擇 Encode 或 Decode。輸入時結果即時更新。
  2. Encode 時關閉 Numeric 使用命名實體,開啟則使用十進位引用。
  3. 貼上文字或實體。用 Sample 查看 <div>&lt;div&gt;
  4. 複製輸出。僅靠實體跳脫不能當作完整 XSS 防護。

Named vs numeric

輸入命名編碼數字編碼
<div>&lt;div&gt;&#60;div&#62;
Tom & JerryTom &amp; JerryTom &#38; Jerry
"quote"&quot;quote&quot;&#34;quote&#34;

範例

輸入 / 設定輸出說明
<div> → 命名&lt;div&gt;標記顯示為文字
&lt;div&gt; → 解碼<div>範例往返
Tom & Jerry → 命名Tom &amp; JerryHTML/XML 文字中的 &
A > B → 數字A &#62; B解碼後與 &gt; 相同

實務上常見陷阱

  • 跳脫文字 ≠ 清理 HTML。屬性、javascript: URL、SVG/腳本需要其他防護。
  • CMS 往返後常見雙重編碼(&amp;lt;);先解碼一次再判斷是否還需一輪。
  • 只跳脫五個保留字元,不會把所有 Unicode 變成實體(請用 Unicode 工具)。

參考資料

最後審閱: 2026-07-26

常見問題

什麼時候需要編碼 HTML 實體?
當文字必須在 HTML 中依字面顯示時——程式碼範例、CMS 欄位、RSS/Atom 標題或使用者片段——以免 `<`、`>`、`&` 被當成標記解析。
這能防止 XSS 嗎?
不能。它只改變文字語境下的表示形式,不是完整 HTML 清理器,也不涵蓋屬性、URL、腳本、CSS。對不可信 HTML 請使用框架跳脫與可信 sanitizer。
命名實體與數字實體差在哪?
命名如 `&amp;`、`&lt;`;數字(十進位)如 `&#38;`、`&#60;`。解碼兩者都接受;編碼時可選擇偏好樣式。
輸入會上傳到伺服器嗎?
不會。編解碼僅在瀏覽器中執行。