Conditional Comments

Conditional Comments (CC) sind eine prima Sache, wenn es darum geht schnelle und flexible Browserweichen zu erstellen. Uns Webbastler stehen dazu einige Werte und Operatoren zur Verfügung. An Werten nutzen wir die verschiedenen Versionsbezeichnungen des Internet Explorers (IE 5, IE 5.0, IE 5.5, IE 6, IE 7).

Die Operatoren lassen zum Teil auch komplexere Ausdrücke zu:

Operator Beispiel Beschreibung
! [if !IE] NOT – der Nicht-Operator. Kehrt den nachfolgenden Ausdruck um. Das Beispiel schließt alle Versionen des Internet Explorers aus.
lt [if lt IE 5.5] Less Then – der Kleiner als Operator. Das Beispiel lässt nur den IE 5.0 zu.
lte [if lte IE 5.5] Less Then Equal- der Kleiner oder Gleich Operator. Das Beispiel lässt den IE 5.0 und den IE 5.5 zu.
gt [if gt IE 5.5] Greater Then – der Größer als Operator. Das Beispiel lässt den IE 6 und den IE 7 zu und schließt den IE 5.0 und IE 5.5 aus.
gte [if gte IE 5.5] Greater Then Equal – der Größer oder Gleich Operator. Das Beispiel lässt den IE 5.5, IE 6 und IE 7 zu. Lediglich der IE 5.0 wird ausgeschlossen.
() [if !(IE 5.5)] Subexpression Operator – Operator innerhalb eines Operators. Damit sind komplexere booleanische Ausdrücke möglich.
& [if (gt IE 5.0)&(lt IE 7)] AND – Der Und Operator. Das Beispiel lässt den IE 5.5 und den IE 6 zu.
| [if (lte IE 5.5)|(IE 7)] OR – Der Oder Operator. Das Beispiel schließt den IE 6 aus.
true [if true] Lässt immer durch.
false [if false] Schließt immer aus.

Es wird zwischen downlevel-hidden und downlevel-revealed unterschieden.

downlevel-hidden


Syntax: 	<!--[if expression]> Kommentar/Anweisung <![endif]-->
Beispiel: 	<!--[if gt IE 5]>
				<link href="schade.css" rel="stylesheet" type="text/css" media="screen" />
			<![endif]-->

Während wir die downlevel-hidden Comments gerne einsetzen, um den verschiedenen Internet Explorer Versionen ein eigenes- meist zuätzliches – Stylesheet anzubieten, gibt es für die downlevel-revealed Comments nicht ganz so offensichtliche Einsatzmöglichkeiten. Hierbei geht es eben darum etwas vor dem Internet Explorer zu verbergen.

downlevel-revealed

Die nachfolgende Syntax ist nicht valide!


Syntax: 	<![if expression]> Kommentar/Anweisung <![endif]>
Beispiel:	<![if !IE]> nix für IEs <![endif]>

Die valide Syntax lautet:


Syntax: 	<!--[if expression]>--> Kommentar/Anweisung <!--<![endif]>-->
Beispiel:	<!--[if !IE]>--> nix für IEs <!--<![endif]>-->

Ein Kommentar

  1. Conditional Comments ohne zusätzliche http requests » LexaT | 07. November 2008 um 08:14 »

    [...] ich letztlich schon beschrieben habe, werden Conditional Comments oft als Browserweiche benutzt. Mit ihnen ist es [...]

Kommentar schreiben