Mengapa teks memaparkan “&” dan cara membetulkannya
Diterbitkan pada · Dikemas kini pada 2 minit bacaan
Apabila sesuatu teks memaparkan “&” sebagai ganti “&”, entiti HTML telah dienkod sekali terlalu banyak. Alat ini mendekod satu peringkat setiap kali dan memberitahu anda apabila masih ada yang tinggal.
Apa itu entiti HTML
Entiti ialah urutan tanda yang mewakili aksara yang dikhaskan untuk kod halaman. Lima yang lazim.
| Aksara | Entiti |
|---|---|
| & | & |
| < | < |
| > | > |
| " | " |
| ' (apostrof lurus) | ' |
Dari mana enkod berganda datang
Sesuatu teks kadangkala melalui dua sistem yang masing-masing mengenkod: penyunting, kemudian templat halaman. Setiap lintasan mengubah “&” daripada entiti sebelumnya. Dengan Enkod/dekod entiti HTML, mengenkod “Tom & Jerry” menghasilkan “Tom & Jerry”, kemudian mengenkod hasil itu menghasilkan “Tom &amp; Jerry”.
| Langkah | Teks hasil |
|---|---|
| Teks asal | Tom & Jerry |
| Dienkod sekali | Tom & Jerry |
| Dienkod dua kali | Tom &amp; Jerry |
Pelayar mendekod satu peringkat semasa memaparkan. Teks yang dienkod dua kali oleh itu dipaparkan dengan “&” sebagai ganti “&”.
Mendekod satu peringkat setiap kali
Alat ini membuang satu peringkat entiti pada setiap lintasan. Jika hasilnya masih mengandungi entiti, mod “Kedua-duanya” menandainya dan anda menjalankan dekod semula pada hasilnya.
| Teks | Dekod pertama | Dekod kedua |
|---|---|---|
| Tom &amp; Jerry | Tom & Jerry | Tom & Jerry |
| &lt;b&gt;gras&lt;/b&gt; | <b>gras</b> | <b>gras</b> |
Mendekod satu peringkat sahaja mengelakkan pembatalan enkod yang disengajakan: contoh kod yang perlu memaparkan “&” pada skrin ditulis “&amp;” dalam halaman.
Aksen dan simbol
Dekod memahami semua entiti bernama yang berakhir dengan koma bertitik, bukan hanya lima yang biasa. “café à 5 € © 2026” menghasilkan “café à 5 € © 2026”, dengan ruang tanpa putus menjadi ruang tanpa putus yang sebenar.
Entiti berangka
Entiti berangka turut didekod: “été” menghasilkan “été”, dan “😀” seperti “😀” menghasilkan emoji yang sama.
Apa yang dibiarkan utuh oleh alat
- Entiti yang tidak dikenali seperti “&inconnue;” dibiarkan seadanya.
- Entiti tanpa koma bertitik di hujung, seperti “&” atau “<” dalam ayat, tidak disentuh.
- Alamat dengan parameter, seperti “https://exemple.fr/?a=1¶m=2©=4”, kekal tepat: “¶m” dan “©” tidak dianggap entiti di situ.
Mengenkod kod untuk dipaparkan
Untuk memaparkan petikan kod dalam halaman, enkod sekali sahaja. Teks “<a href="x">l’été & plus</a>” menghasilkan “<a href="x">l'été & plus</a>”. Huruf berbaris tidak dienkod, hanya lima aksara terpelihara.
Mengelakkan masalah
Enkod sekali sahaja, pada saat terakhir, semasa menulis ke dalam halaman. Untuk menggantikan secara pukal sisa enkod yang salah, Cari dan ganti dalam teks sesuai digunakan. Alamat web mengikut enkod lain, diterangkan dalam Jangan keliru antara Base64, hash dan alamat yang dienkod.
Semak hasilnya
- Jalankan dekod semula selagi alat masih melaporkan entiti yang tinggal.
- Bandingkan dengan teks asal pada skrin.
- Semak ruang tanpa putus dan emoji.
