💳 343.063 Bản ghi BIN🏦 13.269 Ngân hàng phát hành🌍 199 Quốc gia🧰 30 Công cụ miễn phí

Mã hóa / Giải mã thực thể HTML

Escape văn bản để dùng an toàn trong HTML, chuyển ký tự đặc biệt thành thực thể số hoặc giải mã thực thể về văn bản thuần.

Các thực thể HTML thông dụng

Ký tựThực thểDạng sốMô tả
&&&Dấu và (ampersand)
<&lt;&#60;Dấu nhỏ hơn
>&gt;&#62;Dấu lớn hơn
"&quot;&#34;Dấu nháy kép
'&apos;&#39;Dấu nháy đơn (apostrophe)
⍽&nbsp;&#160;Khoảng trắng không ngắt dòng
©&copy;&#169;Ký hiệu bản quyền
®&reg;&#174;Ký hiệu nhãn hiệu đã đăng ký
™&trade;&#8482;Ký hiệu nhãn hiệu
€&euro;&#8364;Ký hiệu Euro
£&pound;&#163;Ký hiệu Bảng Anh
¥&yen;&#165;Ký hiệu Yên
¢&cent;&#162;Ký hiệu Cent
§&sect;&#167;Ký hiệu mục (section)
°&deg;&#176;Ký hiệu độ
±&plusmn;&#177;Dấu cộng trừ
×&times;&#215;Dấu nhân
÷&divide;&#247;Dấu chia
…&hellip;&#8230;Dấu ba chấm
–&ndash;&#8211;Gạch ngang ngắn (en dash)
—&mdash;&#8212;Gạch ngang dài (em dash)
«&laquo;&#171;Dấu ngoặc kép góc trái
»&raquo;&#187;Dấu ngoặc kép góc phải
·&middot;&#183;Dấu chấm giữa

Giới thiệu về Mã hóa / Giải mã thực thể HTML

HTML dùng một số ký tự cho cú pháp riêng, nên dấu &, dấu nhỏ hơn, lớn hơn và dấu nháy phải được viết dưới dạng thực thể như &amp;, &lt; và &quot; khi xuất hiện như văn bản. Escape chúng cũng là lớp phòng thủ đầu tiên chống tấn công cross-site scripting (XSS) khi bạn hiển thị dữ liệu người dùng nhập trên trang. Chọn “ký tự đặc biệt” để chỉ escape năm ký tự đó, hoặc “mọi ký tự không phải ASCII” để chuyển cả chữ có dấu, ký hiệu và emoji thành thực thể số như &#233; — hữu ích cho hệ thống cũ, mẫu e-mail và tệp có mã hóa không xác định. Chế độ giải mã làm điều ngược lại: chuyển các thực thể có tên, thập phân và thập lục phân trở lại ký tự dễ đọc, giống hệt cách trình duyệt làm. Bảng tham chiếu liệt kê các thực thể bạn cần dùng thường xuyên nhất. Mọi thứ chạy trong trình duyệt của bạn.

FAQ

&#39; và &apos; khác nhau thế nào?

Cả hai đều là dấu nháy đơn. &apos; được định nghĩa trong HTML5 và XML nhưng không có trong HTML 4 cũ, nên dạng số &#39; là lựa chọn an toàn nhất và hoạt động ở mọi nơi.

Escape HTML có đủ để ngăn chặn XSS không?

Escape năm ký tự đặc biệt bảo vệ văn bản đặt giữa các thẻ và bên trong thuộc tính có dấu nháy. Ngữ cảnh URL, JavaScript và CSS cần cách mã hóa riêng, vì vậy hãy dùng thêm template engine escape mặc định và Content Security Policy.

Tôi nên dùng thực thể có tên hay thực thể số?

Thực thể số hoạt động với mọi ký tự Unicode và trong mọi trình phân tích. Thực thể có tên dễ đọc hơn nhưng chỉ có cho một số ký tự. Với trang UTF-8, bạn thường chỉ cần escape các ký tự đặc biệt.