Encodeur et décodeur d’entités HTML
Échappez du texte pour l’insérer sans risque dans du HTML, ou retransformez des entités comme & et € en caractères lisibles.
Fonctionne dans le navigateurSans inscriptionAucun envoi de données
Comment utiliser : Encodeur / décodeur d’entités HTML
- Choisissez Encoder pour échapper du texte, ou Décoder pour retransformer des entités en caractères.
- Pour l’encodage, choisissez les caractères à échapper : uniquement les caractères spéciaux HTML, aussi tous les caractères non ASCII, ou tout sauf les lettres et les chiffres.
- Choisissez les entités nommées (
é), décimales (é) ou hexadécimales (é). - Copiez le résultat. Lors du décodage, les entités inconnues sont listées pour vous aider à repérer les fautes de frappe.
Pourquoi échapper le HTML ?
Cinq caractères ont une signification particulière en HTML : & commence une entité, < et > délimitent les balises, et " et ' ferment les valeurs d’attributs. Si un texte fourni par un utilisateur qui les contient est inséré dans une page sans échappement, il peut casser la mise en page ou, pire, injecter des scripts (cross-site scripting, XSS). L’échappement les transforme en &, <, >, " et ', que le navigateur affiche comme du texte.
Entités nommées, décimales et hexadécimales
Tout caractère Unicode peut s’écrire sous forme de référence numérique : décimale € ou hexadécimale € pour €. Beaucoup de caractères courants ont aussi un nom lisible, comme €, © ou . Les références numériques fonctionnent partout, y compris en XML, qui ne définit que cinq entités nommées. Les entités nommées sont plus faciles à lire dans le code source.
Faut-il encoder les caractères non ASCII ?
Pas si votre page est servie en UTF-8, ce qui est le cas de presque tous les sites modernes (<meta charset="utf-8">). Des caractères comme é, ü ou 日本 peuvent être écrits directement. Les encoder reste utile pour les systèmes anciens, les templates d’e-mails, ou lorsqu’une chaîne de traitement abîme le texte non ASCII.
L’échappement dépend du contexte
L’échappement en entités HTML protège le texte placé dans le contenu des éléments et dans les attributs entre guillemets. Il ne suffit pas pour les valeurs à l’intérieur des blocs <script>, des gestionnaires d’événements inline, du CSS ou des URL, qui ont chacun besoin de leur propre encodage. Préférez l’échappement automatique de votre framework (React, Vue, Jinja, Blade) à la construction manuelle de chaînes.
Questions fréquentes
Quels caractères faut-il échapper en HTML ?
& et < sont indispensables. Dans les valeurs d’attributs, échappez aussi le guillemet utilisé. Échapper les cinq (& < > " ') est le choix sûr par défaut.Qu’est-ce que &nbsp; ?
Pourquoi &copy2024 est-il décodé en ©2024 ?
©, & et <, même sans point-virgule final. Ce décodeur suit la même règle. Écrivez toujours le point-virgule dans votre propre HTML.L’apostrophe s’écrit-elle &apos; ou &#39; ?
' est valide en HTML5 et en XML mais pas en HTML 4 : la forme numérique ' ou ' est donc la plus compatible, et c’est ce que produit cet encodeur.