Hallo Michelle!
Ich habe jedoch eine recht komplexe Browser-Weiche zusammenbekommen, welche bis zum einfügen von *html-Bug (oder wie auch immer man das nennen mag) bestens auf allen (von mir gestesteten) Systemen funktioniert.
<link rel="stylesheet" type="text/css" href="/basis.css" />
<!--[if IE]><style type="text/css">@import url(/ie.css);</style><![endif]-->
<!--[if lt IE 7]><style type="text/css">@import url(/nicht_ie.css);</style><![endif]-->
<!--[if IE 6]><style type="text/css">@import url(/ie.css);</style><![endif]-->
<!--[if gte IE 5.5]><style type="text/css">@import url(/ie.css);</style><![endif]-->
<!--[if lte IE 5.5999]><style type="text/css">@import url(/ie5.css);</style><![endif]-->
<!--[if lt IE 5.1]><style type="text/css">@import url(/ie5.css);</style><![endif]-->
<!--[if !IE]> -->
<style type="text/css">/*/*/ @import (" ''") screen; @import url(/nicht_ie.c\ss) screen; /* */</style>
<style type="text/css">/*/*/ @import (" ''") screen; @import url(/konqueror.css) screen; /* */</style>
<style type="text/css">/*/*/ @import url(/opera.c\ss) screen; /* */</style>
<style type="text/css">@media screen { @import url(/opera.css) screen; }</style>
<style type="text/css">@import("/mac_ie523.css");</style>
<style type="text/css">@media handheld {#dummy{left:0px} @import url("/basis.css");}</style>
<link type="&{'text/css'};" rel="&{'stylesheet'};" href="&{'/basis.css'};" disabled>
<!-- <![endif]-->
- basis.css
- ie.css
- nicht_ie.css
- ie5.css
- konqueror.css
- opera.css
- mac_ie523.css
Da hast du aber ziemlich viele verschiedene CSS-Dateien! Mal abgesehen von dem Traffic, den das u.a. produziert, sind hier Fehler (fast) vorprogrammiert und der Pflegeaufwand ist enorm.
Ich empfehle dir mal die Seite von Herrn Lipfert durchzulesen: http://www.lipfert-malik.de/webdesign/tutorial/css.html
Bei deiner Verwendung der CCs kommt bestimmt nicht das heraus, was beabsichtigt ist. Beispiel:
<!--[if IE]> ie.css => wird von allen IE Win ab 5.0 geladen
<!--[if lt IE 7]> nicht_ie.css => wird von allen IE Win ab 5.0 geladen, die kleiner als Version 7 sind
<!--[if IE 6]> ie.css => wird vom IE 6 geladen
<!--[if gte IE 5.5]> ie.css => wird von allen IE Win ab 5.5 geladen, also auch vom 6er und 7er!
usw.
Das macht oben für den IE 6 schon alleine 4 Dateiaufrufe!
nicht_ie.css mit dem *html-Bug bewirkt, dass die bisher korrekte Anzeige im IE5.23 auf MAC gesprengt wird. Ansonste tut's überall IO. Deshalb möcht ich eben wissen ob der Teil
Das verstehe ich nicht so ganz, da der Star-HTML Bug ja eigentlich dazu genutzt wird, um _in_einer CSS Datei Anweisungen nur für die IEs (Win + Mac >= 4) 'sichtbar' zu machen. Wahrscheinlich werden aber auch noch andere CSS Dateien geladen.
Nur mal nebenbei: Du weisst schon, dass die Conditional Comments _nur_von den IEs für Windows interpretiert werden?
<!--[if lt IE 7]><style type="text/css">@import url(/nicht_ie.css);</style><![endif]-->
auch wirklich funktioniert.
Tut es! Trifft auf IE Win 5.0, 5.5 und 6 zu.
Mein unbedingter Rat: Definiere in jeder deiner CSS Dateien bspw. eine andere Background-Color für das Body-Element, um in den einzelnen Browsern sehen zu können, welche CSS Datei als letzte geladen wurde!
Gruß Gunther