Binatomy
Entités HTML

Encodeur d'Entités HTML

Encodez et décodez les entités HTML en temps réel avec un tableau de référence complet des caractères spéciaux

Référence des entités HTML communes

CaractèreEntitéDescription
&&Esperluette
<&lt;Inférieur à
>&gt;Supérieur à
"&quot;Guillemets doubles
'&#39;Apostrophe
©&copy;Copyright
®&reg;Marque déposée
™&trade;Marque commerciale
€&euro;Euro
£&pound;Livre sterling
°&deg;Degré
(espace)&nbsp;Espace insécable
–&ndash;Tiret demi-cadratin
—&mdash;Tiret cadratin
…&hellip;Points de suspension
×&times;Multiplication
FAQ

Questions Fréquentes

Tout ce que vous devez savoir sur les entités HTML

Quand l'encodage HTML est-il nécessaire ?

L'encodage HTML est nécessaire lors de l'insertion de contenu généré par l'utilisateur dans une page HTML. Sans encodage, des caractères comme < > & " peuvent être interprétés comme du code HTML, causant des vulnérabilités XSS (Cross-Site Scripting). Il est essentiel dans tous les templates affichant des données non fiables.

Quelle est la différence entre &amp; et &#38; ?

&amp; est une entité nommée, tandis que &#38; est une entité numérique décimale (et &#x26; est l'hexadécimale). Elles représentent toutes le caractère "&". Les entités nommées sont plus lisibles, les numériques sont universellement supportées. Les deux sont valides en HTML5.

Dois-je encoder les espaces en HTML ?

Les espaces normaux ne nécessitent pas d'encodage en HTML. &nbsp; (Espace insécable) est un espace spécial qui empêche le retour à la ligne et crée un espace incompressible. Il est utilisé quand on veut maintenir les espaces entre des mots qui ne doivent pas être séparés sur des lignes différentes.

L'encodage HTML protège-t-il contre toutes les attaques XSS ?

L'encodage HTML des caractères spéciaux est la première ligne de défense contre XSS, mais n'est pas suffisant seul. Il faut aussi : utiliser Content Security Policy (CSP), valider les entrées côté serveur, assainir les URL (javascript:// est dangereux), et utiliser des frameworks qui protègent automatiquement (Laravel Blade avec {{ }} échappe automatiquement).

Quelle différence entre la forme nommée et la forme numérique ?

La forme nommée se lit mieux, la forme numérique, en décimal ou en hexadécimal, est supportée partout. Elles désignent le même caractère et le navigateur les interprète de la même façon.

Quand faut-il encoder un caractère ?

Quand il a déjà un sens dans le code, comme les chevrons et l'esperluette, et quand on veut être sûr qu'un symbole rare s'affiche quel que soit l'encodage de la page.

Faut-il encoder l'espace ?

L'espace ordinaire non. L'entité de l'espace insécable sert quand deux mots ne doivent pas être séparés en fin de ligne, par exemple entre un nombre et son unité de mesure.