100 % lokal — Ihre Daten verlassen nie Ihren Browser

HTML-Escape — Text, der als Text erscheint

Text für HTML escapen. Die fünf strukturellen Zeichen werden benannte Entitäten, alles über ASCII eine numerische Referenz, die auf jeder Seite geht.

Sofort Privat Null Cookies

Text-Eingabe

HTML Entities-Ausgabe

Was dieses Werkzeug tut

Fünf Zeichen ändern die Bedeutung von HTML, sie bekommen deshalb einen Namen:

ZeichenAusgabe
&&
<&lt;
>&gt;
"&quot;
'&#39;

Alles oberhalb des druckbaren ASCII wird zu einer dezimalen numerischen Referenz: é ergibt &#233;, € ergibt &#8364;.

Numerisch statt benannt

é kommt als &#233; heraus, nicht als &eacute;, und das ist Absicht.

Eine benannte Entität muss vom Dokumenttyp definiert sein. HTML definiert einige Tausend; XML definiert genau fünf. Fügen Sie &eacute; in eine XML-Datei, einen Atom-Feed oder ein als XML ausgeliefertes XHTML-Dokument ein, und der Parser meldet eine undefinierte Entität. &#233; verstehen alle.

Unsichtbare Zeichen werden sichtbar

Ein geschütztes Leerzeichen wird zu &#160;. Oft ist genau das der Zweck: ein aus Word eingefügtes U+00A0 sieht im Editor exakt wie ein Leerzeichen aus und verhält sich völlig anders, und Kodieren ist der Weg, es zu finden.

Tabulator und Zeilenumbruch bleiben roh. Sie sind in HTML-Text zulässig, und sie in Referenzen zu verwandeln würde den Quelltext nur schlechter lesbar machen.

Das Apostroph

' wird zu &#39; statt zu &apos;. &apos; ist in XML und in HTML5 definiert, aber nicht in HTML 4 — ein Dokument in diesem Modus zeigt die sieben Zeichen statt des Zeichens an. Die numerische Form hat diese Lücke nicht.

Eine Referenz pro Zeichen, nicht pro Einheit

Ein Emoji kommt als &#128512; heraus, eine einzige Referenz. Zeichen außerhalb der mehrsprachigen Basisebene werden intern in zwei Einheiten gespeichert, und ein naiver Escaper gibt dafür zwei kaputte Referenzen aus. Dieser läuft über Codepunkte.

Datenschutz ab Werk

Alles läuft lokal in deinem Browser mit JavaScript. Deine Daten werden nie hochgeladen, wodurch das Tool auch für sensible Inhalte sicher ist und offline funktioniert.

Häufige Fragen

Warum wird é zu &#233; und nicht zu &eacute;?
Weil eine numerische Referenz in jedem Dokument funktioniert. Benannte Entitäten jenseits der fünf Grundzeichen definiert der HTML-Doctype — XML definiert genau fünf vorab, `&eacute;` in einer XML-Datei ist also ein Fehler wegen undefinierter Entität. `&#233;` hat diese Bedingung nicht.
Muss ich jedes Nicht-ASCII-Zeichen escapen?
Nein. Ein UTF-8-Dokument, das seinen Zeichensatz deklariert, stellt `é` direkt dar, und das ist meist die bessere Quelle. Escapen zählt, wenn der Text einen Kanal passieren muss, der nur ASCII kennt oder den Sie nicht kontrollieren: eine alte Template-Engine, ein Mail-Gateway, ein Datenbankfeld mit unbekannter Kodierung.
Reicht das, um Benutzereingaben in HTML sicher zu machen?
Für Textinhalt und für einen Attributwert in Anführungszeichen ja — genau diese fünf Zeichen ändern die Bedeutung des Markups. Es reicht **nicht** innerhalb von `<script>` oder `<style>`, in einem Attribut ohne Anführungszeichen oder in einem URL-Attribut, wo `javascript:` das Risiko ist. Escapen hängt vom Kontext ab, und dieses Werkzeug deckt einen ab.

Ähnliche Konverter