HTML5 und MSIE8

ezPublish hat auf HTML5 umgestellt. Zumindest das empfohlene Layout bei Neuinstallationen benutzt die HTML5 Strukturelemente wie <section>, <header> und <footer>. Mit dem Microsoft Internet Explorer Version 8, den letzten, den es für Windows XP (64bit) gibt, sieht das verheerend aus.

Der Grund ist ganz simpel: Der HTML Parser des MSIE ist nicht in der Lage die neuen Elemente korrekt zu parsen. Der Parsebaum schaut dann im MSIE Tool (F12) so aus:

<section class="view-full"/>
<div class="class-article">
  ...
</div>
</section/>

Der MSIE hat hier tatsächlich die Struktur des Dokuments beim Parsen völlig zerstört! In Folge dessen ist natürlich dann auch die Anwendbarkeit von CSS unmöglich, die vordefinierten Styles greifen ins Leere.

Der Trick besteht darin, den HTML/XML Parser anzuweisen, die Elemente zu kennen. Dazu genügt es, die Elemente einmal per Javascript zu erzeugen, sie müssen nicht einmal in diesem gerade geparsten Dokument eingebettet sein.

Dieses Script muß aber vor dem Parsen des eigentlichen Dokumentes ausgeführt werden. Es sollte so früh wie möglich, also gleich im "<head>", ausgeführt werden.

<head>
<!--[if lte IE 8]>
<script src="/html5.js" type="text/javascript"></script>
<![endif]-->

Post a comment

Verwandter Inhalt