Seit dem ich den Blog habe, versuche ich – so gut wie möglich – den Code der Seiten W3C-konform zu halten.
Das klappt bei „normalen“ Eintragsseiten auch ganz wunderprächtig. Spätestens aber beim Einbinden von YouTube Videos und anderen Flash-Objekten ist der Code der Seite aber nicht mehr „valide“.
Das Problem hierbei ist, dass die zum Einbinden verwendeten Code-Schnipsel zwar HTML, aber nicht XHTML-konform sind und dabei Elemente aufweisen, die in der XHTML Spezifikation nicht vorgesehen sind. Die einzige „valide“ Variante bisher war statt des eingebetteten Flash-Films nur einen Link auf das Video zu setzen.
Daher habe ich im Web gesucht und auf W3C YouTube Producer eine Möglichkeit gefunden, den HTML-Code in validen XHTML-Code umwandeln zu lassen.
Aus dem Code Schnipsel
<object width="480" height="385"><param name="movie" value="https://www.youtube.com/v/X5NNx1bP7gM?fs=1&hl=de_DE"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="https://www.youtube.com/v/X5NNx1bP7gM?fs=1&hl=de_DE" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object>
wird nach dem Umwandeln
<object type="application/x-shockwave-flash" style="width:480px;height:385px;" data="https://www.youtube.com/v/X5NNx1bP7gM?fs=1&amp;hl=de_DE"><param name="movie" value="https://www.youtube.com/v/X5NNx1bP7gM?fs=1"/><param name="allowFullScreen" value="true"/></object>
Wichtigstes Merkmal ist, dass das <embed>-Tag im XHTML-Code nicht mehr enthalten ist, welches vom W3C nicht akzeptiert wird, da es lediglich eine „Erfindung“ moderner Browser ist und weder in HTML4 noch in XHTML spezifiziert ist.
Das einzige Manko des neuen Code-Schnipsels ist, dass dem Tag <object … die Größe über die Angabe style=“width:480px;height:385px;“> mitgeteilt wird. Dies wird von anderen Validatoren (z.B. Qualidator) mitunter aber als sogenanntes Spaghetti-Markup angemahnt. Leider weisen aber auch viele WordPress-Plugins das gleiche Dilemma auf, so dass man solch „unsauberes“ (X)HTML fast gar nicht unterbinden kann. Daher ignoriere ich weitestgehend diese Warnungen.
Die bislang eingebundenen Videos werde ich vermutlich nicht mehr aktualisieren. Bei neuen jedoch werde ich die XHTML-Variante verwenden.