HTML 實體編碼工具
在線轉換 HTML 實體字符,支持編碼與解碼,有效防止 XSS 攻擊
輸入文本
字符數: 0
字節數: 0
轉換結果
字符數: 0
字節數: 0
選擇轉換方式
什麼是 HTML 實體編碼?
HTML 實體編碼是一種將特殊字符轉換為 HTML 實體引用的機制。在 HTML 中,某些字符具有特殊含義(如 <、>、&),如果需要在頁面中顯示這些字符本身,就必須使用實體編碼。實體編碼有兩種形式:命名實體(如 <)和數字實體(如 <)。命名實體更易讀,而數字實體可以表示任何 Unicode 字符。
HTML 實體編碼的主要用途
- 防止 XSS 攻擊: 將用戶輸入的特殊字符轉義,防止惡意腳本注入
- 顯示特殊字符: 在 HTML 中顯示 < > & " ' 等保留字符
- 國際化支持: 使用數字實體顯示各種語言的特殊字符
- 代碼展示: 在網頁中安全地展示 HTML 代碼片段
使用方法
基本操作
- 在左側輸入框輸入或粘貼需要轉換的文本
- 點擊對應的轉換按鈕選擇編碼或解碼方式
- 右側自動顯示轉換結果
- 點擊「複製」按鈕複製結果到剪貼板
轉換方式說明
- HTML 實體編碼: 將 < > & " ' 轉換為命名實體,適合防止 XSS
- HTML 實體解碼: 將命名實體還原為原始字符
- 數字實體編碼: 將特殊字符轉換為數字實體形式(如 <)
- 完整編碼: 將所有非 ASCII 字符都進行編碼,適合國際化場景
- 完整解碼: 還原所有形式的 HTML 實體
快捷鍵
Ctrl + E- HTML實體編碼Ctrl + D- HTML實體解碼
常用 HTML 實體字符表
| 字符 | 命名實體 | 數字實體 | 說明 |
|---|---|---|---|
| < | < | < | 小於號 |
| > | > | > | 大於號 |
| & | & | & | 和號 |
| " | " | " | 雙引號 |
| ' | ' | ' | 單引號 |
| 空格 | |   | 不換行空格 |
| © | © | © | 版權符號 |
| ® | ® | ® | 註冊商標 |
| ™ | ™ | ™ | 商標符號 |
| € | € | € | 歐元符號 |
| ¥ | ¥ | ¥ | 日元/人民幣符號 |
常見問題 (FAQ)
Q: HTML 實體編碼和 URL 編碼有什麼區別?
A: HTML 實體編碼用於 HTML 文檔中,將特殊字符轉換為 &xxx; 或 &#xxx; 格式;URL 編碼用於 URL 中,將特殊字符轉換為 %XX 格式。兩者應用場景不同,HTML 編碼用於頁面內容,URL 編碼用於鏈接地址。
Q: 為什麼編碼後 & 顯示為 &?
A: 因為 & 本身是實體編碼的前綴,編碼時需要先處理。第一次編碼會將 & 變成 &,這是正確的。解碼時會將 & 還原為 &。
Q: 命名實體和數字實體哪個更好?
A: 命名實體(如 <)更易讀,便於維護;數字實體(如 <)可表示任意 Unicode 字符,兼容性更好。對於常用字符推薦命名實體,對於特殊字符使用數字實體。
Q: 如何防止 XSS 攻擊?
A: 對於用戶輸入的內容,在輸出到 HTML 頁面前,使用 HTML 實體編碼將 < > & " ' 等字符轉義。這樣即使用戶輸入了惡意腳本,也會被當作普通文本顯示,不會被執行。
Q: 我的數據安全嗎?
A: 完全安全。本工具的所有處理都在您的瀏覽器本地完成,數據不會上傳到任何服務器。您的數據始終留在您的設備上。