DevToolPal
NL

HTML-entities coderen en decoderen

Escape tekst naar HTML-entities zoals < en é, of decodeer entities terug naar platte tekst.

Draait lokaal, wordt nooit geüpload

Opties

Modus

Invoer

0 tekens · 0 B

Uitvoer

0 tekens · 0 B

Wat het doet

HTML-entities zijn codes die voor tekens staan, zoals &lt; voor < en &eacute; voor é. Deze tool escapet tekst naar entities zodat die veilig in een webpagina getoond kan worden, en decodeert entities terug naar platte tekst, bijvoorbeeld wanneer je markup uit een CMS of een e-mailtemplate kopieert.

Coderen gebruikt de volledige HTML5-lijst van meer dan 2.000 benoemde verwijzingen, en decoderen begrijpt benoemde, decimale (&#169;) en hexadecimale (&#xA9;) verwijzingen precies zoals een browser dat doet.

Zo gebruik je het

  1. Plak tekst of HTML in het veld Invoer, upload een bestand of klik op Voorbeeld.
  2. Kies Coderen of Decoderen.
  3. Kies bij coderen hoeveel er gecodeerd wordt:
    • Alleen & < > ” ’: het minimum om tekst in HTML of een attribuut te zetten.
    • Plus niet-ASCII, benoemd: zet ook tekens zoals é, © en — om in benoemde entities, en alles zonder naam in een numerieke verwijzing.
    • Plus niet-ASCII, numeriek: hetzelfde, maar altijd numeriek (&#xe9;), wat ook geldige XML is.
    • Alles met een naam: codeert zelfs leestekens zoals . en /, handig als een systeem die tekens weghaalt.
  4. Kopieer of download het resultaat. Met Als invoer gebruiken decodeer je het weer om de heen-en-terugconversie te controleren.

Voorbeeld

<p>Café & "crème brûlée"</p>

wordt, gecodeerd met alleen de speciale tekens,

&lt;p&gt;Café &amp; &quot;crème brûlée&quot;&lt;/p&gt;

en met benoemde entities voor niet-ASCII

&lt;p&gt;Caf&eacute; &amp; &quot;cr&egrave;me br&ucirc;l&eacute;e&quot;&lt;/p&gt;

Veelvoorkomend gebruik

Een codesnippet op een blog tonen zonder dat de browser het rendert, gebruikerstekst in een HTML-e-mail zetten, dubbel ge-escapete tekst zoals &amp;amp; herstellen (één keer decoderen), of een bestand veilig maken voor een systeem dat alleen ASCII accepteert.

Veelgestelde vragen

› Welke tekens moeten in HTML ge-escapet worden?

In tekst escape je & en <. Binnen attribuutwaarden escape je ook het aanhalingsteken dat de waarde omsluit. Overal & < > " en ' escapen, wat hier de standaard is, is altijd veilig.

› Moet ik benoemde of numerieke entities gebruiken?

Beide werken in elke moderne browser. Benoemde entities zoals &eacute; zijn beter leesbaar; numerieke verwijzingen zoals &#xe9; werken ook in XML en in oudere parsers die maar een paar namen kennen. Met een UTF-8-pagina hoef je niet-ASCII-tekens meestal helemaal niet te coderen.

› Kan het decoderen entities zonder puntkomma aan?

Ja. Het volgt de HTML-specificatie, dus verouderde vormen zoals &copy zonder puntkomma worden gedecodeerd zoals een browser dat zou doen. Onbekende namen zoals &foo; blijven ongewijzigd.

› Is escapen genoeg om XSS te voorkomen?

Escapen is de juiste verdediging voor tekst binnen HTML-elementen en attributen tussen aanhalingstekens. Het maakt onbetrouwbare invoer niet veilig binnen scriptblokken, styleblokken, event handler-attributen of URL's; die hebben codering nodig die bij de context past.