Zum Inhalt springen

Validator

Webbrowser sind sehr tolerant: sie versuchen immer die Webseite darzustellen, auch wenn der HTML-Code nicht ganz korrekt ist. Das ist ein ganz anderes Verhalten als z.B. beim C#-Compiler, der erst seine Arbeit macht wenn der Code perfekt ist.

Im HTML Living Standard ist festgeschrieben, wie der Browser mit Syntax Fehlern umgehen soll. Einen solchen Fehler in der HTML-Syntax nennt der Standard einen parse error: Der Browser repariert ihn beim Einlesen nach festen, im Standard beschriebenen Regeln und stellt die Seite trotzdem dar.

Was passiert bei neuen HTML-Tags oder neuen Attributen von bekannten HTML-Tags?

Neue Attribute oder Tags, die z. B. ein Browser nicht erkennt, sind zu ignorieren – es gibt keine Fehlermeldungen!

Das Attribut bli, welches nicht zu HTML gehört, also kein Browser kennt, wird wie andere unbekannte Attribute einfach ignoriert. Der Browser liest den Namen und den Wert des Attributes, tut aber nichts damit.

<img alt="Das ist Neu!"
bli="bla, blo"
src="neu.svg"
>

Wenn das W3C in HTML Version 21 beispielsweise den neuen Tag <jump> (hüpfenden Text) einführen würde, könntest du diesen Tag auf deiner Webseite verwenden. Der Text würde jedoch nur in den neuesten Versionen der Browser (die schon die Version 21 kennen) hüpfend dargestellt. In älteren Browsern wird der Tag <jump> ignoriert:

Neuer Tag in neuem Browser, Interpretation in altem Browser
<p>Dies ist meine erste
<jump>supercoole</jump>
Webseite!!!! </p>
Neuer Tag in neuem Browser, Interpretation in altem Browser
<p>Dies ist meine erste
supercoole
Webseite!!!!</p>

HTML-Code, der genau dem Standard entspricht, nennt man valide. Der Browser ist zu tolerant, er sagt dir nicht, ob dein Code valide ist.

Ein Validator stellt die Seite nicht dar, sondern prüft ausschließlich, ob der Code dem Standard entspricht, und meldet jede Abweichung als Fehler. Wir verwenden https://validator.w3.org/

Screenshot: HTML-Validator des World Wide Web Consortiums

Der W3C-Validator bietet drei Wege an:

  • Validate by URI: Du gibst die Adresse einer bereits online erreichbaren Seite ein.
  • Validate by File Upload: Du lädst eine HTML-Datei von deinem Rechner hoch.
  • Validate by Direct Input: Du fügst deinen HTML-Code direkt in ein Textfeld ein.

Solange deine Seite noch nicht online ist, sind für den Anfang Validate by Direct Input oder Validate by File Upload am praktischsten.

Die Fehlermeldungen des Validators muss man sorgfältig lesen, von oben nach unten durcharbeiten und reparieren. Mit etwas Glück repariert man das erste Problem und viele Folge-Fehler fallen damit auch weg.

Screenshot: Fehlermeldungen des Validators

Die erste Fehlermeldung empfiehlt ein Attribut zum html Start-Tag hinzuzufügen. Die zweite Fehlermeldung weist auf einen p Ende-Tag hin, der keinen passenden Start-Tag hat.

Wenn der Code valide ist, also dem HTML-Standard entspricht, erscheint eine Erfolgsmeldung:

Screenshot: Erfolgsmeldung des Validators

Auch der Editor zeigt Fehler im HTML-Code an, hier z.B: PHPStorm:

Screenshot: Fehler in HTML-Code in PHPStorm

Der Editor zeigt 3 ernste Warnungen zu HTML, 1 schwache Warnung, und 4 Rechtschreib-/Tippfehler an. Mit den kleinen Pfeilen nach oben und unten kann man zu den jeweiligen Zeilen springen, dort erscheint das Fenster mit der Zusatzinformation.