HTML 轉義/反轉義
HTML 轉義/反轉義
HTML 轉義/反轉義支援 HTML 實體的轉義與反轉義,可處理特殊字元與標籤顯示,適合使用者輸入顯示、程式碼範例和內容安全處理。
快速開始
常見使用情境
使用者評論
轉義使用者提交的評論內容,防止 XSS 攻擊
部落格文章
在文章中顯示 HTML 程式碼範例
論壇貼文
安全顯示使用者發布的內容
聊天訊息
防止惡意程式碼透過聊天功能傳播
表單資料
處理和顯示表單提交的資料
程式碼展示
在網頁中展示 HTML/JavaScript 程式碼片段
補充場景
HTML 實體、轉義 HTML、反轉義 HTML 也可在同一流程中完成,便於在複製、匯出或交付前快速核對結果。
轉義規則與實體
使用建議
限制與相容性
隱私與安全
常見問題
XSS(跨站腳本攻擊)是攻擊者透過注入惡意腳本到網頁中,竊取使用者資訊或執行惡意操作。HTML 轉義是防禦 XSS 的基本手段
顯示任何使用者輸入的內容時都需要轉義,包括評論、留言、表單資料等。只要內容可能包含 HTML 標籤就需要轉義
兩者都表示 <(小於號)。&lt; 為命名實體(lt=less‑than),&#60;/&#x3C; 為數字/十六進位實體。於現代 HTML 行為相同:需可讀性則用 &lt;;在不支援命名實體或需表示任意字元/跨標記語言時用 &#60;/&#x3C;。末尾分號務必保留(如 &lt;),省略可能與後續字元黏連而被誤解析,例如「&notin」會被視為「&not;」+「in」→「¬in」。
不能。HTML 轉義只在 HTML 上下文有效。在 JavaScript、CSS、URL 等上下文中需要不同的轉義方法
這是因為內容被轉義了兩次。第一次 < 變成 &lt;,第二次 & 又被轉義成 &amp;,結果變成 &amp;lt;。應避免重複轉義
請進行「淨化(Sanitization)」而非僅轉義:以允許清單保留安全標籤/屬性並過濾協議。建議僅保留 p/br/ul/ol/li/a/strong/em/code/pre/blockquote/h1–h3;a 只允許 href/title/target(協議限 http/https/mailto/tel),img 只允許 src/alt;移除 style 與所有 on* 事件。推薦使用 DOMPurify/sanitize‑html,盡量於伺服器端淨化;切勿將未淨化內容放入 innerHTML/dangerouslySetInnerHTML,純文字使用 textContent