Cara menggunakan Encoder HTML Entity
- Pilih Encode untuk meng-escape teks agar aman di HTML, atau Decode untuk mengubah entity kembali menjadi karakter.
- Tempel teksmu. Hasilnya langsung diperbarui saat kamu mengetik.
- Saat encode, pilih karakter mana yang mau diubah (hanya karakter khusus HTML, atau juga aksen, simbol, dan emoji) serta format entity: named, decimal, atau hex.
- Klik Salin. Gunakan Tukar untuk memasukkan hasilnya kembali ke arah sebaliknya.
Apa itu HTML entity?
HTML entity adalah urutan escape yang mewakili karakter yang bisa salah ditafsirkan sebagai markup, atau karakter yang sulit diketik. Entity diawali dengan & dan diakhiri dengan ;, dalam tiga bentuk: named (©), decimal (©), dan hexadecimal (©). Ketiganya sama-sama menampilkan ©. Encoding wajib dilakukan setiap kali kamu menampilkan teks dari pengguna atau contoh kode di halaman web. Tanpa encoding, <script> di dalam komentar akan dijalankan, bukan ditampilkan.
Lima karakter yang wajib di-escape
| Karakter | Entity | Alasan |
|---|---|---|
& | & | Diawali setiap entity |
< | < | Membuka tag |
> | > | Menutup tag |
" | " | Menutup nilai atribut dengan tanda kutip ganda |
' | ' | Menutup nilai atribut dengan tanda kutip tunggal (' tidak didefinisikan di HTML 4) |
Di konten teks biasa, meng-escape & dan < sudah cukup. Di dalam nilai atribut, tanda kutip juga harus di-escape. Opsi “Hanya karakter khusus HTML” melakukan hal ini dan membiarkan karakter lain tetap bisa dibaca. Pilihan ini tepat untuk halaman UTF-8, yang hampir semua halaman saat ini menggunakannya.
Masih perlukah entity untuk aksen dan simbol?
Jika halamanmu disajikan dalam UTF-8 (<meta charset="utf-8">), kamu bisa langsung menulis é, €, atau emoji. Meng-encode semua karakter non-ASCII tetap berguna jika konten melewati sistem yang tidak mendukung UTF-8 dengan baik, misalnya CMS lama, template email tertentu, feed XML, atau file sumber dengan encoding yang tidak diketahui. Named entity hanya tersedia untuk sekumpulan karakter terbatas (Latin-1, huruf Yunani, simbol matematika dan tipografi umum). Untuk karakter lain, seperti emoji, dipakai referensi numerik: 😀 → 😀.
Entity yang berguna untuk diketahui
| Entity | Hasil | Kegunaan |
|---|---|---|
| (spasi tanpa pemutusan baris) | Menjaga “10 kg” tetap dalam satu baris |
­ | (tanda hubung lunak) | Titik pemenggalan opsional pada kata panjang |
— / – | — / – | Tanda hubung panjang dan sedang |
… | … | Elipsis |
“ ” | “ ” | Tanda kutip tipografi |
€ © ™ | € © ™ | Simbol |
Cara kerja decoding
Decoder mengenali seluruh 2.231 named character reference yang didefinisikan dalam HTML Living Standard, ditambah referensi decimal dan hex. Untuk kasus khusus, decoder mengikuti aturan browser: – menjadi en dash (pemetaan Windows-1252), dan code point yang tidak valid menjadi �. Nama entity bersifat case-sensitive. É adalah É, sedangkan é adalah é. Untuk URL, gunakan URL Encoder, dan untuk data biner gunakan Base64. Mau mengubah HTML menjadi teks yang mudah dibaca? Coba HTML ke Markdown.
Juga dicari sebagai: html escape, escape html, html entities, html encode, html decode, encode html online, karakter khusus html, html entity converter.
Tool yang cocok dipakai bersama Encoder HTML Entity
- Formatter HTML — Tempel markup yang berantakan atau sudah di-minify, lalu dapatkan HTML rapi dengan indentasi konsisten — termasuk blok <style> dan <script> di dalamnya.
- Markdown ke HTML — Tulis atau tempel Markdown dan langsung dapatkan HTML yang rapi, dengan preview langsung yang sudah dibersihkan, tabel GitHub-flavored, daftar tugas, dan blok kode berpagar.
- Penerjemah Kode Morse — Ketik teks untuk mendapatkan kode Morse, atau tempel titik dan garis untuk menerjemahkannya.
- Konverter Teks ke Biner — Ketik teks untuk melihatnya sebagai kode biner, atau tempel biner (atau hex, oktal, desimal) untuk menerjemahkannya kembali menjadi teks yang bisa dibaca.
Pertanyaan yang sering diajukan
Karakter apa saja yang harus di-escape di HTML?
& dan < di konten teks, serta " (dan ' jika memakai tanda kutip tunggal) di dalam nilai atribut. Meng-escape > tidak wajib secara ketat, tetapi sudah menjadi kebiasaan umum.Apakah HTML escaping bisa mencegah XSS?
<script>, event handler inline, CSS, atau URL href="javascript:…". Kasus-kasus itu butuh penanganan khusus sesuai konteksnya.Apa bedanya &nbsp; dengan spasi biasa?
berurutan tidak digabung menjadi satu seperti spasi biasa.Sebaiknya pakai entity named atau numerik?
é lebih mudah dibaca. Entity numerik bisa dipakai untuk semua karakter Unicode dan juga di XML, yang hanya mendefinisikan & < > " ' secara bawaan.