HTML Fehler auf der Seite? Und was ist der W3C Validator überhaupt?

Ich werde ab und zu von Kunden auf W3C Kompatibilität angesprochen. So mancher potentielle Kunde, testet auch gerne die Internetseite eines Anbieters im Validator, bevor er Kontakt aufnimmt. Leider fehlt häufig das technische Verständnis, um die Ausgabe des W3C Validators richtig zu interpretieren.

Aus diesem Grunde achte ich stets darauf, dass von mir bereitgestellte Seiten keine -oder möglichst wenig Fehler- aufweisen. Die vermeintlichen CSS3 Fehler auf www.medienservice-ladewig.de, sind lediglich Kommandos, die aus Kompatibilitätsgründen wissentlich von mir so gesetzt wurden.

Aber erstmal zum W3C Validator im verständlichen deutsch - Was ist W3C?

W3C Markup Validation Service ist ein Dienst des World Wide Web Consortium, welcher Web Dokumente auf konformität zu Webstandards testet, bzw. auf "wohlgeformtes Markup" überprüft.

Oder noch einfacher ausgedrückt, es überprüft ein im Web gebräuchliches Dokument auf Fehler.

Üblicherweise ist dies ein HTML, XHML, XML, CSS Stylesheet, RDF, OWL, SVG oder WCAG Dokument.
Der Validator prüft, wenn man so will, die Grammatik des Codes. Also die richtige Verwendung von Befehlen, Klammern, Anführungszeichen, richtig gesetzte Attribute usw. Dazu die Verschachtelungen von Elementen. Die zu verwendende Spezifikation wählt der Validator anhand des DOCTYPES des Dokuments aus. Elemente, die in der jeweiligen Spezifikation nicht enthalten sind, oder schlicht falsch formatiert oder geschrieben wurden, erzeugen Fehlermeldungen.

Klingt einfach? Ist es leider auch. Denn man könnte jetzt einfach meinen, dass eine professionell erstellte Webseite zwingend ohne Fehler auskommen muß. Ein Fehler deutet im Allgemeinen schließlich darauf hin, dass die Internetseite nicht ordnungsgemäß oder gar schlampig erstellt wurde.

Leider ist es dann doch nicht ganz so einfach. Teilweise werden Fehler, oder Befehle die vom Validator als vermeintliche Fehler erkannt werden, tatsächlich absichtlich in den Code einer HTML Seite geschrieben. Dies sind zumeist Befehle, die die Kompatibilität zu älteren Browserversionen gewährleisten sollen. Diese werden zwar vom W3C Validator als Fehler erkannt, von modernen Browsern aber schlicht ignoriert. Lediglich ältere Browser, für die diese Befehle gesetzt wurden, können sie aufgreifen und richtig umsetzen.

Prominentestes Beispiel sind hier sicherlich die Vendor-Präfixe:

  1. body { -moz-border-radius:5px; }

    Das Vendor-Präfix “-moz” steht in diesem Fall für Mozilla. Diese Codezeile ist völlig korrent und soll in einem Mozilla Browser runde Ecken für ein Element (zumeist DIV Container oder Bild) erzeugen. Leider kennt der W3C Validator keine Vendor-Präfixe und wirft schlicht einen Fehler.

  2. meta http-equiv="X-UA-Compatible" content="IE=edge"

    Diese häufig genutzte Code-Zeile wirft beim Validator ebenfalls einen Fehler. Dient aber nur dazu, dass der Internet Explorer die neueste Chrome Render-Engine nutzt. Its a feature, not a bug!

    Ich umgehe dieses Problem, in dem ich diese Zeile einfach in den HTTP Response Header schreibe.

  3. Nicht bekannte Attribute von Elementen

    Auch gibt der W3C Validator bei nicht bekannten Attributen einen Fehler aus. Dies ist ja auch richtig und sollte aus diversen Gründen vermieden werden, dennoch ist es kein Fehler, der die Darstellung der Seite beeinflussen würde. In der Regel werden diese für Javascript Routinen gesetzt.

Häufig wird auch einfach aus Performancegründen vermeintlich falscher HTML/CSS Code erzeugt. Als Beispiel sei hier die Seite von google.de genannt, die alleine bereits 26 Fehler im W3C Validator wirft.

Also sollte man die Fehler des W3C Validators einfach ignorieren?

Ganz sicher nicht. Aber ein fehlerfreies Dokument (im Sinne des W3C Validators) ist auch kein Qualitätsmerkmal. Damit zu werben, geht zwar in Ordnung, aber nur, wenn man den Kunden auch über die Validierung aufklärt. Sonst grenzt es fast an Bauernfängerei.

Es muss klar zwischen Fehlern, die die Darstellung der Webseite beeinflussen und tolerierbaren Validator Fehlern unterschieden werden. Diese Unterscheidung sollte möglichst einem Fachmann mit Sachkenntnis überlassen werden.

Trotzdem - um sich gar nicht erst auf Diskussionen einlassen zu müssen, sollte man darauf achten, dass der Validator wenig (besser keine) Fehler wirft.

Hier das Statement von google zum Thema:



teile diesen Beitrag

0 Kommentare

Diskutiere mit!

 
Kommentar senden