Chuyển đến nội dung
ToolMug

Mã hóa & giải mã thực thể HTML

Thoát văn bản để hiển thị an toàn bên trong HTML, giải mã văn bản chứa thực thể trở lại thành ký tự đọc được, hoặc chuyển ký tự thành chuỗi thoát Unicode dùng cho JavaScript, JSON và CSS. Chế độ giải mã hiểu mọi thực thể có tên trong chuẩn HTML5.

Chạy trong trình duyệt — không có dữ liệu nào bạn nhập bị tải lên

Cách sử dụng

  1. Chọn Mã hóa hoặc Giải mã, và HTML hoặc chuỗi thoát Unicode.
  2. Dán văn bản của bạn. Kết quả cập nhật ngay khi bạn nhập.
  3. Với mã hóa HTML, chọn chỉ thoát năm ký tự đặc biệt hoặc thoát cả những ký tự ngoài ASCII.
  4. Sao chép kết quả.

Giải thích tùy chọn

Thoát ký tự đặc biệt
Chuyển & < > " ' thành thực thể. Đây là tất cả những gì một trang web UTF-8 cần và giữ các ký tự khác vẫn đọc được.
Thoát cả ký tự ngoài ASCII
Chuyển mọi ký tự ngoài ASCII thành thực thể số, dùng cho các hệ thống không lưu được UTF-8.
Dùng thực thể có tên
Dùng tên như &copy; và &nbsp; khi có, dùng thực thể số cho các trường hợp còn lại.
Chuỗi thoát Unicode
\uXXXX cho JavaScript và JSON (emoji thành hai chuỗi thoát, một cặp surrogate), \u{…} cho JavaScript hiện đại, U+XXXX để gọi tên code point, và &#…; là thực thể HTML dạng thập phân.

Thực thể thường gặp

Ký tự Có tên Dạng số
& &amp; &#38;
< &lt; &#60;
> &gt; &#62;
“ &quot; &#34;
’ &apos; &#39;
khoảng trắng không ngắt dòng &nbsp; &#160;
© &copy; &#169;
— &mdash; &#8212;

Câu hỏi thường gặp

Thoát HTML có chống được XSS không?

Thoát văn bản trước khi chèn vào nội dung phần tử HTML là một lớp bảo vệ quan trọng. Các ngữ cảnh thuộc tính, URL, JavaScript và CSS cần quy tắc thoát riêng, nên hãy dùng cơ chế thoát có sẵn của framework thay vì làm tay.

Sự khác nhau giữa &nbsp; và khoảng trắng thường là gì?

Khoảng trắng không ngắt dòng (U+00A0) trông giống khoảng trắng nhưng ngăn trình duyệt xuống dòng tại vị trí đó, và nhiều dấu liên tiếp sẽ không bị gộp lại.

Vì sao &copy không có dấu chấm phẩy vẫn giải mã được?

Vì lý do lịch sử, chuẩn HTML vẫn giải mã một số thực thể phổ biến dù thiếu dấu chấm phẩy ở cuối. Bộ giải mã này tuân theo đúng quy tắc mà trình duyệt dùng.

Làm sao để hiện emoji trong JSON dưới dạng chuỗi thoát?

Chọn Chuỗi thoát Unicode với \uXXXX. Emoji ngoài vùng Basic Multilingual Plane sẽ thành hai chuỗi thoát, ví dụ 😀 là 😀.

Quyền riêng tư

Công cụ này chạy hoàn toàn trong trình duyệt của bạn. Tệp và văn bản được xử lý ngay trên thiết bị và không bao giờ được tải lên máy chủ của chúng tôi.

Công cụ liên quan