Um verschiedene Elemente fix an bestimmten Stellen einer Seite darzustellen, wurden früher häufig Frames verwendet. Zwar ein durchaus legitimes Mittel, jedoch ist der Einsatz von Frames häufig mit Nachteilen und zusätzlichem Aufwand verbunden. Eine mögliche Alternative wäre der Einsatz von position:fixed innerhalb von CSS.

Das W3C hat in seiner CSS Empfehlung bei der Positionierung von Elementen neben den bereits häufig eingestetzten relative, static, absolute auch eine fixe Positionierung vorgesehen. Leider kam diese Art der Positionierung bisher eigentlich nie zum Einsatz, da der Microsofts Internet-Explorer, dieses Attribut leider selbst in Version 6 nicht unterstützt.

Microsoft scheint jedoch auf die Aufschreie aus den verschiedenen Webdesign Ecken halbwegs gehört zu haben und der Internet Explorer 7 unterstützt diese Art der Positionierung nun endlich. Aufgrund der eingeschränkten Umgebungen, auf denen der IE 7 jedoch läuft (Windows XP+ und Windows Server 2003+) ist das Problem auch weiterhin nicht zu unterschätzen, da alle anderen älteren Betriebssysteme nur mit dem Internet Explorer 6 laufen können.

Kennt man die einzelnen Macken der verschiedenen Browser im Bezug auf diese CSS Formatierung, so stehen einem verschiedene Wege offen, um anstelle von normalen Frames CSS Frames zu simulieren

Conditional Comments : Eingebaute Browserweichen

In der Not und im Laufe der Zeit haben CSS Anwender die verschiedensten Wege und Mittel gefunden, um die fehlerhafte Darstellung in den unterschiedlichen Browser auszutricksen. Dazu werden häufig verschiedene sogenannte CSS Hacks verwendet, welche Leseschwächen der Browser ausnutzen und ihnen CSS Information vorenthalten oder in anderen Fällen werden fehlerhafte Informationen überschrieben.

Das diese CSS Hacks auch Nachteile haben versteht sich natürlich von selbst. Spätestens mit erscheinen einer neuen Version kann es durchaus vorkommen, dass eine Leseschwäche zwar verbessert wurde, der Darstellungsfehler jedoch immer noch vorhanden bleibt, was schnell zu langen und schlaflosen Nächten führen kann

Microsoft selbst liefert jedoch eine Abhilfe gegen diese Problem, die sogeannten Condition Comments

Mehr dazu findet sich auf der Microsoft Entwickler Seite.
Kurz zusammengefasst: Im Gegensatz zu anderen Browsern und Tools, die Kommentare ignorieren, werden Kommtare vom IE geparst. Microsoft führte diese Idee erstmals mit dem IE 5/Win ein. Diese Einführung geschah recht unauffällig und blieb lange unbeachtet, bzw. nur sehr selten genutzt. Mittlerweile habe sich die Conditional Comments rumgesprochen und werden immer häufiger eingesetzt.

Der Internet Explorer ist also in der Lage Kommentare zu lesen und überprüft, ob diese bestimmte Bedingungen enthalten, die er erfüllen kann. Erfüllt er die Bedingungen des Conditional Comments, so wird sämtlicher gefundener Code innerhalb des Kommentares ausgeführt. Das ermöglicht es nicht nur andere Styles zu laden, sondern auch komplette HTML Tags je nach Browser ausführen zu lassen.

Hier noch ein kleines Beispiel :

<!--[if IE 6]>
 
sie benutzen den Internet Explorer 6
 
<![endif]-->
 
<!--[if IE 5]> 
 
sie benutzen den Internet Explorer 5
 
<![endif]-->

Das ist bestimmt kein beeindruckendes Beispiel, aber es zeigt sehr gut, wozu Conditional Comments verwendet werden können. Allergrößter Vorteil: Zumindest in der Internet Explorer Reihe ab Version 5 kann man dank dieser Kommentare sehr schön viele Bugs aushebeln und umgehen, in dem für diese Browser ein alternativer CSS oder HTML Code eingebunden wird.

Pages: 1 2 3