HTML-Entities erklaert: Warum & und < existieren und wann du sie brauchst

Wer schon einmal in den Quelltext einer Webseite geschaut hat, ist ueber Schreibweisen wie &, < oder © gestolpert. Diese kryptischen Zeichenfolgen heissen HTML-Entities. Sie sind kein Fehler, sondern eine notwendige Technik, um bestimmte Zeichen sicher in HTML darzustellen. Dieser Ratgeber erklaert, warum es Entities gibt, wie sie aufgebaut sind und welche Rolle sie fuer die Sicherheit von Webseiten spielen.

Das Grundproblem: Manche Zeichen haben eine Doppelrolle

HTML benutzt einige Zeichen als Steuerzeichen. Die spitzen Klammern < und > markieren Tags, das kaufmaennische Und leitet selbst eine Entity ein, und Anfuehrungszeichen umschliessen Attributwerte. Was passiert nun, wenn du genau diese Zeichen als sichtbaren Text anzeigen willst, etwa die Aussage "5 < 10"?

Schreibst du das kleiner-als-Zeichen direkt in den Text, glaubt der Browser, ein neues Tag beginne, und die Anzeige geraet durcheinander. Genau hier kommen Entities ins Spiel: Sie sind eine Ersatzschreibweise, die der Browser als reines Zeichen darstellt, ohne es als Steuerzeichen zu deuten.

Benannte und numerische Entities

Jede Entity beginnt mit einem kaufmaennischen Und und endet mit einem Semikolon. Dazwischen steht entweder ein Name oder eine Nummer:

Numerische Entities funktionieren fuer jedes erdenkliche Zeichen, auch fuer Emojis oder seltene Symbole, fuer die es keinen Namen gibt. Mit dem Tool HTML Entities auf kotsch.tech wandelst du Text in beide Richtungen um, also vom Klartext in escapte Entities und wieder zurueck.

Die fuenf wichtigsten Zeichen zum Escapen

In der Praxis dreht sich fast alles um eine kleine Gruppe von Zeichen, die in HTML eine Sonderbedeutung haben:

Werden diese fuenf Zeichen konsequent ersetzt, kann ein eingegebener Text das HTML-Geruest nicht mehr durcheinanderbringen.

Escaping als Schutz vor XSS

HTML-Entities sind nicht nur Kosmetik, sondern ein zentrales Sicherheitswerkzeug. Stell dir ein Kommentarfeld vor, in das ein Angreifer statt eines Textes ein Skript-Tag schreibt. Wuerde die Webseite diese Eingabe ungefiltert ausgeben, fuehrte der Browser das Skript aus, ein klassischer Cross-Site-Scripting-Angriff (XSS).

Werden die spitzen Klammern dagegen vor der Ausgabe in &lt; und &gt; umgewandelt, erscheint der Schadcode nur als harmloser Text auf dem Bildschirm und wird nicht ausgefuehrt. Deshalb gilt die Regel: Jede Nutzereingabe, die spaeter in HTML landet, muss escapt werden. Moderne Frameworks tun das automatisch, doch das Verstaendnis dahinter bewahrt vor Luecken.

Entity-Verwirrungen und doppeltes Escapen

Ein haeufiger Fehler ist das doppelte Escapen. Wandelt man einen bereits escapten Text noch einmal um, wird aus &amp; ploetzlich &amp;amp;, und im Browser erscheint sichtbar der Text &amp; statt eines einzelnen Und-Zeichens. Genau solche Faelle laesst du am besten mit einem Tool pruefen, das beide Richtungen beherrscht, statt von Hand zu raten.

Der HTML Entities Konverter zeigt dir das Ergebnis sofort. Wer mehrere Encodings auf einmal pruefen will, etwa zusaetzlich Base64 oder URL-Encoding, nutzt den kombinierten Text Decoder. Alle weiteren Werkzeuge findest du gesammelt unter kotsch.tech/webtools.

Wann brauche ich Entities, wann nicht?

Dank des heute ueblichen Zeichensatzes UTF-8 musst du Umlaute, Akzente oder Emojis nicht mehr zwingend als Entity schreiben, du kannst sie direkt im Text verwenden. Pflicht bleibt das Escapen nur fuer die wenigen Steuerzeichen von HTML und ueberall dort, wo fremde Eingaben ausgegeben werden. Fuer reinen Inhaltstext genuegt heute meist die direkte Schreibweise.

Fazit

HTML-Entities loesen den Konflikt zwischen Steuerzeichen und sichtbarem Text und sind zugleich ein wirksamer Schutz vor XSS. Wer die fuenf wichtigsten Zeichen kennt und doppeltes Escapen vermeidet, schreibt sauberes und sicheres HTML. Teste deine Texte direkt mit dem HTML Entities Konverter auf kotsch.tech.