Encoder et décoder des entités HTML

Échappez les caractères spéciaux d'un texte pour l'insérer dans du HTML sans casser la page, ou reconvertissez les entités HTML en texte brut.

Entités HTML

Lors de l'encodage :

Entités HTML les plus utilisées

CaractèreNomméeNumérique
& & &
< &lt; &#60;
> &gt; &#62;
" &quot; &#34;
' &apos; &#39;
(nbsp) &nbsp; &#160;
© &copy; &#169;
® &reg; &#174;
™ &trade; &#8482;
€ &euro; &#8364;
£ &pound; &#163;
° &deg; &#176;
± &plusmn; &#177;
× &times; &#215;
÷ &divide; &#247;
… &hellip; &#8230;
– &ndash; &#8211;
— &mdash; &#8212;
« &laquo; &#171;
» &raquo; &#187;
“ &ldquo; &#8220;
” &rdquo; &#8221;
• &bull; &#8226;
→ &rarr; &#8594;
á &aacute; &#225;
é &eacute; &#233;
ñ &ntilde; &#241;
Ñ &Ntilde; &#209;
ü &uuml; &#252;
ç &ccedil; &#231;
¿ &iquest; &#191;
¡ &iexcl; &#161;

Que sont les entités HTML ?

Une entité HTML permet d'écrire un caractère à l'aide d'un code qui commence par & et se termine par ;. Elle peut être nommée, comme &copy; pour ©, ou numérique, avec le numéro Unicode du caractère en décimal (&#169;) ou en hexadécimal (&#xA9;).

Quand faut-il les utiliser ?

Il faut toujours échapper les caractères qui ont une signification spéciale en HTML : < et > (ils ouvrent et ferment les balises), & (il commence une entité) et les guillemets dans les attributs. Sinon, le navigateur les interprète comme du code : la mise en page se casse et, si le texte provient d'un utilisateur, la porte est ouverte aux attaques XSS.

Les lettres accentuées ou les emojis n'ont pas besoin d'entités si la page est en UTF-8, ce qui est la norme aujourd'hui. Elles ne sont utiles que lorsque le fichier doit être en ASCII pur, par exemple dans certains e-mails ou d'anciens systèmes.