@@suit:
»» Um mal ein einfaches Beispiel zu konstruieren: Wenn du XHTML 1.0 verwendest, musst du <br /> schreiben, <br> wäre ein Fehler. In HTML 4.01 ist hingegen <br> korrekt.
Aber auch <br /> ist nicht falsch, da HTML 4.01 noch viele SGML-Features in puncto Kurzschreibweisen unterstützt. Allerdings wird die NETENABL-schreibweise (<foo />) nicht empfohlen, da viele Browser von SGML eigentlich keine wirkliche Ahnung haben. In diesem Fall spuckt der Validator aber eine Warnung und keinen Fehler aus.
Kommt drauf an.
<foo><bar/></foo>
▲
Das '/' schließt das 'bar'-Element; das folgende '>' wäre Textinhalt des 'foo'-Elements.
Wenn 'foo' keinen Textinhalt haben darf, meldet der Validator einen Fehler.
Bspw. bei
<head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/></head>
▲
Das hingegen gibt keinen Fehler:
<p><img src="myPicture" alt="my picture"/></p>
▲
Gemäß SGML müsste '>' nach dem Bild angezeigt werden.
Dass sich kein gängiger Browser wie ein SGML-Parser verhält und '>' anzeigt, steht auf einem anderen Blatt. Und das ist auch gut so, sonst gäbe es kein HTML-kompatibles XHTML.
Live long and prosper,
Gunnar
Das einzige Mittel, den Irrtum zu vermeiden, ist die Unwissenheit. (Jean-Jacques Rousseau)