Codificator și decodificator de entități HTML

Escapează textul ca să poată fi pus în siguranță în HTML sau transformă entități precum & și € înapoi în caractere lizibile.

Rulează în browserFără înregistrareNimic nu este încărcat

Codificat

Cum se folosește: Codificator / decodificator entități HTML

  1. Alege Codifică pentru a escapa text sau Decodifică pentru a transforma entitățile înapoi în caractere.
  2. La codificare, alege ce caractere să escapezi: doar cele speciale HTML, și toate caracterele non-ASCII sau totul în afară de litere și cifre.
  3. Alege entități denumite (é), zecimale (é) sau hexazecimale (é).
  4. Copiază rezultatul. La decodificare, entitățile necunoscute sunt listate, ca să poți observa greșelile de tipar.

De ce să escapezi HTML?

Cinci caractere au semnificație specială în HTML: & începe o entitate, < și > delimitează tag-urile, iar " și ' închid valorile atributelor. Dacă un text furnizat de utilizator care le conține este inserat neescapat într-o pagină, poate strica layout-ul sau, mai rău, poate injecta scripturi (cross-site scripting, XSS). Escaparea le transformă în &amp;, &lt;, &gt;, &quot; și &#x27;, pe care browserul le afișează ca text.

Entități denumite, zecimale și hex

Orice caracter Unicode poate fi scris ca referință numerică: zecimal &#8364; sau hex &#x20AC; pentru €. Multe caractere comune au și un nume lizibil, precum &euro;, &copy; sau &nbsp;. Referințele numerice funcționează peste tot, inclusiv în XML, care definește doar cinci entități denumite. Entitățile denumite sunt mai ușor de citit în codul sursă.

Trebuie să codific caracterele non-ASCII?

Nu, dacă pagina este servită ca UTF-8, cum este aproape orice site modern (<meta charset="utf-8">). Caractere precum é, ü sau 日本 pot fi scrise direct. Codificarea lor este utilă pentru sisteme vechi, șabloane de e-mail sau când un pipeline strică textul non-ASCII.

Escaparea depinde de context

Escaparea entităților HTML protejează textul pus în conținutul elementelor și în atributele între ghilimele. Nu este suficientă pentru valori din blocuri <script>, handlere de evenimente inline, CSS sau URL-uri, care au fiecare nevoie de propria codificare. Preferă escaparea automată a framework-ului tău (React, Vue, Jinja, Blade) în locul construirii manuale a șirurilor.

Întrebări frecvente

Ce caractere trebuie escapate în HTML?
În conținutul text, & și < sunt esențiale. În valorile atributelor, escapează și ghilimeaua folosită. Escaparea tuturor celor cinci (& < > " ') este alegerea implicită sigură.
Ce este &amp;nbsp;?
Un spațiu fără întrerupere (U+00A0). Arată ca un spațiu, dar împiedică ruperea rândului și nu este comprimat cu spațiile vecine.
De ce &amp;copy2024 se decodifică în ©2024?
Pentru compatibilitate inversă, browserele decodifică câteva entități vechi, precum &copy, &amp și &lt, chiar și fără punct și virgulă la final. Acest decodor urmează aceeași regulă. În propriul HTML, scrie întotdeauna punctul și virgula.
Apostroful este &amp;apos; sau &amp;#39;?
&apos; este valid în HTML5 și XML, dar nu în HTML 4, așa că numericul &#39; sau &#x27; este alegerea cea mai compatibilă și ce produce acest codificator.

Instrumente similare