MichaelS: Kompatibilität

Guten Tag zusammen,

ich habe ein kleines Problem mit CSS. Und würde mich freuen, wenn mir jemand einen Denkanstoß oder Hilfestellung geben könnte.

Zum einem habe ich mein Webprojekt(PhP) an den IE ausgerichtet und wollte nun im Anschluß beginnen, das ganze auf komform für FF, Opera, NN etc. zu bringen.

Und nun beginnen meine eigentliche Probleme.

Füge ich die Zusätze in der (bei mir so genannt) global.css ein, so verändert auch der IE die formatierung :(

Deswegen würde ich es gerne folgendes realisieren:

1. Browserindentifikation - dann entsprechende externe CSS-Datei laden
Frage: Ist das möglich ?

2. Befehlsliste für FF, Opera und Co
Frage: Gibt es eine Befehlsreferenz welche die genauen Unterschiede der Browser aufzeigt ?

3. CSS-Datei
Frage: Gibt es eine Möglichkeit, innerhalb der CSS-Datei zu differenzieren ? - Habe mit hier auf Selfhtml die Browserunterschiede angesehen. Es wird auch angezeigt, welche Brwoser welche formatierung der CSS-Datei auslesen. Doch diese Differenzierung ist zuwenig, da der IE und der FF zb den Margin anders interpretieren aber die selben Differenzierungen auslesen können :/

Ich hoffe das ich mich verständlich genug ausgedrückt habe und das jemand bereit ist mir Tips zu geben.

Vielen Dank MichaelS

  1. Yerf!

    Zum einem habe ich mein Webprojekt(PhP) an den IE ausgerichtet und wollte nun im Anschluß beginnen, das ganze auf komform für FF, Opera, NN etc. zu bringen.

    Kleiner Tipp für die Zukunft: der umgekehrte Weg ist meist einfacher. Wichtig ist dabei auch, dass der IE nicht in den Quirksmode geschickt wird, da dann die Unterschiede wesentlich geringer Ausfallen. Dies erreicht man durch einen vollständigen Doctype incl. DTD-Angabe.

    1. Browserindentifikation - dann entsprechende externe CSS-Datei laden
      Frage: Ist das möglich ?

    Ja, entweder über CSS-Hacks oder über Conditional Comments.

    1. Befehlsliste für FF, Opera und Co
      Frage: Gibt es eine Befehlsreferenz welche die genauen Unterschiede der Browser aufzeigt ?

    Eine wirklich aktuelle Übersicht ist mir leider nicht bekannt, aber in SelfHTML steht ja bei allen Angaben dabei, welcher Browser die unterstützt. Wobei man meist davon ausgehen kann, dass es jeder Browser "richtig" macht, außer dem IE und anderen veralteten Exoten.

    1. CSS-Datei
      Frage: Gibt es eine Möglichkeit, innerhalb der CSS-Datei zu differenzieren ? - Habe mit hier auf Selfhtml die Browserunterschiede angesehen. Es wird auch angezeigt, welche Brwoser welche formatierung der CSS-Datei auslesen. Doch diese Differenzierung ist zuwenig, da der IE und der FF zb den Margin anders interpretieren aber die selben Differenzierungen auslesen können :/

    CSS-Hacks, die entweder Fehler in der Interpretation oder das nicht Unterstützen von Selektoren in Browsern ausnutzen.
    Ich benutze hier meistens * html-Hack plus Gegenstück:

    * html .klasse{ /*nur für IE<=6*/ }
    html > body .klasse{ /*für moderne Browser*/ }

    Gruß,

    Harlequin

    1. Super vielen Dank für Deine Antwort.

      Sind Deine CSS-Hacks auch mit dem IE7 konform oder benutz dieser wieder eigene ?

      Gruß und nochmals Dank

      MichaelS

      1. Yerf!

        Sind Deine CSS-Hacks auch mit dem IE7 konform oder benutz dieser wieder eigene ?

        Kommt immer drauf an, was man will. Meine 2 Beispiele führen, wie schon in den Kommentaren angedeutet, dazu, dass der IE7 die Anweisungen für die modernen Browser nimmt, was in meinen Fällen bisher immer gut so war. Der IE7 hat wesentlich weniger Probleme als der 6er (immer vorausgesetzt, dass nkein Quirksmode vorliegt). Aber es gibt auch spezielle Möglichkeiten für den IE7 ( * + html .klasse wenn ich mich recht erinnere). Eine andere Möglichkeit sind die Conditional Comments, diese gehen aber nur in der HTML-Datei, nicht in externen Stylesheets. Allerdings kann man sie benutzen, um je nach Browser verschiedene Stylesheets zu laden.

        Hier in SelfHTML gibts auch irgendwo ein Kapitel dazu. Ah hier...

        Gruß,

        Harlequin

        1. Vielen Dank nochmal, dann werd ich mich mal da durch ackern *g*

          Greetz MichaelS

        2. Hallo,

          Aber es gibt auch spezielle Möglichkeiten für den IE7 ( * + html .klasse wenn ich mich recht erinnere).

          Oder
                * + html #test[id]
          bzw.
                *:first-child+html #test[id]
          vgl. auch
          http://www.lipfert-malik.de/webdesign/tutorial/bsp/css-weiche-filter.html

          Ggf. auch interessant: http://www.lipfert-malik.de/webdesign/tutorial/css.html

          Grüsse

          Cyx23