CSS-Dateien von verschiedenen Browsern interpretieren!
Florian Ludwig
- browser
0 D.R.0 Florian Ludwig0 Der Dicki0 Florian Ludwig0 Florian Ludwig0 D.R.
0 Detlef G.
Hi!
Ich weiß, dass das Thema sicherlich schon zigmal im Forum und irgendwo versteckt in SelfHTML durchgekaut wurde! Aber hier mein Problem: Ich habe eine Seite, mit externer CSS-Datei. jedoch wird die (wie nicht anders zu erwarten) vom Firefox anders interpretiert als fom IE! Also wollte ich eine zweite CSS als Formatierung nur für den Internetexplorer mit:
<!--[if IE]>
<link rel="stylesheet" type="text/css" media="all" href="../../form_ie.css">
<![endif]-->
...angeben. Hat super geklappt! Danach wollte ich für alle restlichen Browser "einfach so" die zweite Datei (die gleiche Elemente, eigenschaften aber nur !!andere Werte!! aufweist [wegen dem falsch interpretiertem Boxenmodell]) angeben mit:
<link rel="stylesheet" type="text/css" media="all" href="../../form.css">
So! Aber IE interpretiert seit dem nur noch die zweite Angabe und nicht, wie von mir erwartet die erste! Bitte helft mir!!!!
Gruß Flo
Hallo,
[…] Danach wollte ich für alle restlichen Browser "einfach so" die zweite Datei (die gleiche Elemente, eigenschaften aber nur !!andere Werte!! aufweist [wegen dem falsch interpretiertem Boxenmodell])
Du musst die 5-er Versionen also auch noch berücksichtigen? Ansonsten kannst auch den 6-er zum richtigen Boxmodell überreden, indem du eine vollständige Dokumenttyp-Deklaration verwendest.
So! Aber IE interpretiert seit dem nur noch die zweite Angabe und nicht, wie von mir erwartet die erste! Bitte helft mir!!!!
Je weiter unten eine CSS-Regel steht (egal ob in mehrere Dateien aufgeteilt), desto höher die Gewichtung. Vertausche die Verweise auf die CSS-Dateien doch einfach oder verstecke die standardkonforme-CSS einfach vor'm IE.
Das geht so:
<!--[if !IE]>-->
Dieser Satz wird nur in richtigen Browser angezeigt, sofern er sich in deinem Quelltext befindet.
<!--<![endif]-->
mfg. Daniel
Hi!
Das geht so:
<!--[if !IE]>-->
Dieser Satz wird nur in richtigen Browser angezeigt, sofern er sich in deinem Quelltext befindet.
<!--<![endif]-->
Im Head steht jetzt bei mir:
<!--[if IE]>
<link rel="stylesheet" type="text/css" media="all" href="../../form_ie.css">
<![endif]-->
<!--[if !IE]>
<link rel="stylesheet" type="text/css" media="all" href="../../form.css">
<![endif]-->
das obere würden normalerweise nur IE´s interpretieren und das untere alle Browser, die kein Internet Explorer sind!? Funktioniert bei mir nur im IE (das obere), im Firefox aber werden seitdem gar keine CSS-Definitionen interprtiert!!!! Warum denn das? Du hast doch gesagt, dass das:
<!--[if !IE]>-->
Dieser Satz wird nur in richtigen Browser angezeigt, sofern er sich in deinem Quelltext befindet.
<!--<![endif]-->
nur in "Nicht"-Internet Explorern interpretiert wird, oder?
Gruß Flo
Hallihallo!
Im Head steht jetzt bei mir:
<!--[if !IE]>
<link rel="stylesheet" type="text/css" media="all" href="../../form.css">
<![endif]-->
Du hast doch gesagt, dass das:
<!--[if !IE]>-->
Dieser Satz wird nur in richtigen Browser angezeigt, sofern er sich in deinem Quelltext befindet.
<!--<![endif]-->
Ja, das hat er. Fällt Dir der Unterschied auf?
(Tipp: Achte auf Anfang und Ende der Kommentare ;) )
Viele liebe Grüße,
Der Dicki
Danke!
Tschü! Gute Nacht!
Flo
Nein! Stop Kommando zurück! Es geht immer noch ni! Jetzt ist es genau anders herum! Firefox interpretiert die Css-Datei, die er soll! Aber jetzt spinnt der IE: Statt dem Seiteninhalt zeigt er nur noch:
--> <!--[endif]-->
an!!!
In meinem HEAD steht:
<!--[if IE]>-->
<link rel="stylesheet" type="text/css" media="all" href="../../form_ie.css">
<!--[endif]-->
<!--[if !IE]>-->
<link rel="stylesheet" type="text/css" media="all" href="../../form.css">
<!--[endif]-->
Oder hab ich wieder was falsch gemacht? Es sollen doch nur alle Internetexplorer die eine Css-Datei (form_ie.css) interpretieren und alle anderen Browser die andere Css-Datei (form.css)!!!
Danke im vorhinaus schonmal!
Gruß Flo
Hallo,
<!--[if IE]>-->
<link rel="stylesheet" type="text/css" media="all" href="../../form_ie.css">
<!--[endif]-->
<!--[if !IE]>-->
<link rel="stylesheet" type="text/css" media="all" href="../../form.css">
<!--[endif]-->
Oder hab ich wieder was falsch gemacht? Es sollen doch nur alle Internetexplorer die eine Css-Datei (form_ie.css) interpretieren und alle anderen Browser die andere Css-Datei (form.css)!!!
Hier scheint ein grundsätzliches Missverständnis vorzuliegen.
Firefox, Opera und co können CCs nicht umsetzen!
Es ist aber trotzdem möglich, Inhalte nur diesen Browsern anzubieten, indem man den Kommentar schließt, und den IEs sagt, sie sollen das nicht darstellen.
Wenn du jetzt aber schreibst:
<!--[if IE]>-->
<link rel="stylesheet" type="text/css" media="all" href="../../form_ie.css">
<!--[endif]-->
…dann wird das von ALLEN Browsern angenommen. Deshalb musst du diesen Verweis auskommentiert lassen:
<!--[if IE]>
<link rel="stylesheet" type="text/css" href="../../form_ie.css" media="all" />
<![endif]-->
mfg. Daniel
Hallo Florian
... (die gleiche Elemente, eigenschaften aber nur !!andere Werte!! aufweist [wegen dem falsch interpretiertem Boxenmodell]) angeben mit:
Brauchst du für IE komplett andere Werte oder nur für bestimmte Eigenschaften bestimmter Elemente?
Bezogen auf das gesamte CSS sind es in der Regel doch nur wenige Eigenschaften weniger Seitenelemente, die für den IE angepasst werden müssen.
Da finde ich es sinnvoller, eine standard.css für alle Browser einzubinden und _nach_ dieser eine ie.css, die lediglich die Anpassungen für IE vornimmt, indem _nur_ die für ihn nicht passenden Werte überschrieben werden.
Damit müssen dann nicht bei jeder kleinen Änderung zwei CSS-Dateien editiert werden.
Auf Wiederlesen
Detlef