Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Verschiedene Stylesheets für IE6 und IE7/FF (https://www.delphipraxis.net/68222-verschiedene-stylesheets-fuer-ie6-und-ie7-ff.html)

Matze 26. Apr 2006 14:17


Verschiedene Stylesheets für IE6 und IE7/FF
 
Hi,

ich habe ein blödes Problem mit meinem Blog. In FF/IE7 benötige ich in einer css-Klasse folgende Eigenschaft:

Code:
margin-left: 62px;
im IE6 jedoch

Code:
margin-left: 32px;
Bisher habe ich den Browser ausgelesen und im Falle des IEs zusätzlich eine Stylesheet-Datei eingebunden, die ein paar Klassen überschreibt:

Code:
<?php
  if (eregi("MSIE", getenv("HTTP_USER_AGENT")) ||
    eregi("Internet Explorer", getenv("HTTP_USER_AGENT"))) {
?>
Doch nun geht das nicht mehr, da der IE7 die Darstellung wie Firefox hat und der IE6 die alte.

Microsoft empfielht sogenannte Conditional Comments:

Code:
<!--[if !IE 7]>
  ...
<![endif]-->
Ist es wirklich die beste Möglichkeit, für die IE-Versionen ungleich 7 eine andere Stylesheet-Datei einzubinden (man soll angeblich auf css-Hacks verzichten, ich wüsste nicht mal, was genau css-Hacks sind ^^) oder soll ich das irgendwie anders lösen? Denn diese Conditional Comments kann man leicht mit den Template-Switches verwechseln, finde ich.

S2B 26. Apr 2006 15:58

Re: Verschiedene Stylesheets für IE6 und IE7/FF
 
Wo sollen denn diese switches verwendet werden? In den CSS-Dateien? Wenn ja, dann würde ich im Moment davon abraten, da sie zumindest in CSS 2.1 noch nicht enthalten sind. Ich würde an deiner Stelle auf einen CSS-Hack zurückgreifen, auch wenn man das nicht verwenden soll. :roll:

Code:
// diese Anweisung funktioniert nur bei IE <= 6
* html .deine_klasse {

}

Matze 26. Apr 2006 16:02

Re: Verschiedene Stylesheets für IE6 und IE7/FF
 
Zitat:

Zitat von S2B
Wo sollen denn diese switches verwendet werden? In den CSS-Dateien?

Ne, in html-dateien, es sind ja schließlich html-Kommentare.

Zitat:

Zitat von S2B
Ich würde an deiner Stelle auf einen CSS-Hack zurückgreifen, auch wenn man das nicht verwenden soll. :roll:

Code:
// diese Anweisung funktioniert nur bei IE <= 6
* html .deine_klasse {

}

Dann werde ich das vorerst so machen, dankesehr.

DGL-luke 26. Apr 2006 16:39

Re: Verschiedene Stylesheets für IE6 und IE7/FF
 
Diese Conditional Comments sind ganz pöhse Microsoft-Erfindungen. Die gibts in keinem Standard! :warn:

;)

jfheins 26. Apr 2006 16:42

Re: Verschiedene Stylesheets für IE6 und IE7/FF
 
aber sie sind imho trotzdem die saubersten Lösungen für solch ein Problem ...

(Benutz ich auch auf meiner Website ...)

alcaeus 26. Apr 2006 16:49

Re: Verschiedene Stylesheets für IE6 und IE7/FF
 
Zitat:

Zitat von DGL-luke
Diese Conditional Comments sind ganz pöhse Microsoft-Erfindungen. Die gibts in keinem Standard! :warn:

Solange man die Conditional Comments nur braucht, um den IE dazu zu bringen, etwas korrekt darzustellen, ist egal ob sie in einem Standard stehn. Firefox muss die ja nicht koennen, denn solange es Kommentare sind, werden sie ja ignoriert. Sei lieber froh dass es etwas gibt, mit dem du die Extra-Style-Sheets fuer die alten (schlechten) IE-Versionen einbinden kannst :roll:

Greetz
alcaeus

Delphi-Freak 26. Apr 2006 16:54

Re: Verschiedene Stylesheets für IE6 und IE7/FF
 
Naja, das mit CSS (* html) sind AFAIK keine Conditional Comments. Eigentlich sind das doch nur diese Kommentare in HTML: http://msdn.microsoft.com/workshop/a...omment_ovw.asp :gruebel:

LG, ich

KingIR 26. Apr 2006 17:33

Re: Verschiedene Stylesheets für IE6 und IE7/FF
 
Zitat:

Zitat von Matze
Zitat:

Zitat von S2B
Ich würde an deiner Stelle auf einen CSS-Hack zurückgreifen, auch wenn man das nicht verwenden soll. :roll:

Code:
// diese Anweisung funktioniert nur bei IE <= 6
* html .deine_klasse {

}

Dann werde ich das vorerst so machen, dankesehr.

Ganz schlechte idee imho, MS selbst (bzw. einer der IE-Entwickler) empfiehlt das *nicht* zu tun[1], sondern saubere Conditional Comments zu verwenden. Da diese von allen anderen Browsern einfach als Kommentar behandelt werden, ist das, wie alcaeus bereits erwähnt hat, eine absolut saubere Lösung.

[1] http://blogs.msdn.com/ie/archive/2005/10/12/480242.aspx

S2B 26. Apr 2006 17:36

Re: Verschiedene Stylesheets für IE6 und IE7/FF
 
Zitat:

Zitat von Delphi-Freak
Naja, das mit CSS (* html) sind AFAIK keine Conditional Comments.

Das habe ich auch nie gesagt, das ist ein simpler CSS-Hack. :wink:
Außerdem verstehe ich nicht, warum man CSS-Hacks jetzt plötzlich nicht mehr anwenden soll. Vorher haben sie einem jahrelang keine Alternative gelassen und plötzlich sagen sie, dass man es nicht machen sollte. :roll: Solange die angewendeten Hacks kompatibel zu allen anderen Browsern sind, werde ich auch weiterhin CSS-Hacks einsetzen.

Edit: @KingIR: Ich werde zu 100% keinen Kommentar in meinen HTML-Quellcode schreiben, nur um die Website im IE6 besser darzustellen, denn ich lagere mein CSS ja nicht ohne Grund aus. :roll:

KingIR 26. Apr 2006 17:56

Re: Verschiedene Stylesheets für IE6 und IE7/FF
 
Zitat:

Zitat von S2B
Edit: @KingIR: Ich werde zu 100% keinen Kommentar in meinen HTML-Quellcode schreiben, nur um die Website im IE6 besser darzustellen, denn ich lagere mein CSS ja nicht ohne Grund aus. :roll:

Das widerspricht sich aber nicht. Man lagert den CSS-Code aus, um das Layout vom Inhalt zu trennen, soll heißen, um das Layout nur über die CSS-Datei(en) ändern zu können, ohne den HTML-Code anzufassen.
So, nun habe ich z.B. eine Datei style.css die für alle Browser eingebunden wird (und deren Dateiname ja auch schon im HTML-Code hinterlegt sein muss) und eine Datei ie6fixes.css, die genauso aus dem HTML-Code referenziert wird, nur dass eben noch ein "spezieller" Kommentar außenrum ist. Sehe da kein Problem, Layout und Inhalt sind weiterhin streng getrennt. :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:54 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz