Steve: CSS - Anweisung nur für den Internet Explorer

Hallo zusammen,

ich habe irgendwann mal gelesen , dass man in einer externen CSS-Datei so was wie eine Abfrage definieren kann, die nur der Internet Explorer intepretiert. NC und Co. ignorieren diesen Befehl.

Ich kann mich nicht mehr erinnern wie die Syntax ist. Ist irgendein Befehl der aus dem Hause MS kommt und nicht HTML konform ist.

Hier noch die Anweisung die nicht in allen Browsern funzt:

div.textArea {border:black 1px solid;
              height:91%; width:92%;
              padding:15px; padding-top:12px;
              overflow:scroll;
              overflow:auto;
              background:#FFFFFF; color:#000000;}

Im IE muss man height:100%; width:100%; definieren damit das Layout o.k. ist.

Danke schon mal,
Steve

  1. Hallo,

    ich habe irgendwann mal gelesen , dass man in einer externen CSS-Datei so was wie eine Abfrage definieren kann, die nur der Internet Explorer intepretiert. NC und Co. ignorieren diesen Befehl.

    Verschiedene Techniken, um CSS vor verschiedenen Browsern zu verstecken gibt's hier:
    http://w3development.de/css/hide_css_from_browsers/

    Ich kann mich nicht mehr erinnern wie die Syntax ist. Ist irgendein Befehl der aus dem Hause MS kommt und nicht HTML konform ist.

    Vielleicht meinst Du die "Conditional Comments".
    Die sind durchaus HTML-konform, wenn man es richtig macht.

    http://www.google.com/search?q=conditional+comments
    http://msdn.microsoft.com/workshop/author/dhtml/overview/ccomment_ovw.asp

    Beispiel fuer MS IE aelter als Version 6 (ungetestet!):

    <!--[if IE lt 6]>
    <link type="text/css" href="msie-special.css" rel="stylesheet">
    <![endif]-->

    overflow:scroll;
                  overflow:auto;

    Was jetzt? Scroll oder Auto?

    Gruesse,

    Thomas

    1. Verschiedene Techniken, um CSS vor verschiedenen Browsern zu verstecken gibt's hier:
      http://w3development.de/css/hide_css_from_browsers/

      Ich kann mich nicht mehr erinnern wie die Syntax ist. Ist irgendein Befehl der aus dem Hause MS kommt und nicht HTML konform ist.

      Vielleicht meinst Du die "Conditional Comments".
      Die sind durchaus HTML-konform, wenn man es richtig macht.

      <!--[if IE lt 6]>
      <link type="text/css" href="msie-special.css" rel="stylesheet">
      <![endif]-->

      Thomas

      Hi Thomas,

      ja die "Conditional Comments" habe ich gemeint. Aber wie ich sehe kann man die nicht in einer CSS Datei einsetzen oder ?

      Ich habe eine grosse CSS Datei und nur die zwei Breitenangaben machen Probleme. Muss ich nun wegen diese Kleinigkeit zwei CSS-Files pflegen?

      Oder ich lagere diese zwei Anweiungen aus und lade 2 CSS-Files.

      overflow:scroll;
                    overflow:auto;

      Der erste Befehl ist für Mozilla, der zweite für den IE.

      Bye,

      Steve

      1. Hallo,

        ja die "Conditional Comments" habe ich gemeint. Aber wie ich sehe kann man die nicht in einer CSS Datei einsetzen oder ?

        Nein, sie betreffen HTML.
        In CSS gibt es andere Tricks, siehe mein erstes Posting.

        Ich habe eine grosse CSS Datei und nur die zwei Breitenangaben machen Probleme. Muss ich nun wegen diese Kleinigkeit zwei CSS-Files pflegen?
        Oder ich lagere diese zwei Anweiungen aus und lade 2 CSS-Files.

        Du musst ja nur das MS IE-spezifische in einer zweiten Datei auslagern.
        Und diese mit Conditional Comments _nach_ der andern einbinden,
        damit die Angaben ueberschrieben werden.

        Vielleicht liegt Dein "Problem" ja auch nur am kaputten Box Model,
        das der MS IE bis 5.5 immer hatte und auch in Version 6.0 im "Quirks Modus" [1]
        noch anwendet? (Falsche Interpretation von width/height, naemlich
        auf die Box inklusive border/padding bezogen statt nur auf den Inhalt.)
        Dann waere einer der beliebten "Box Model Hacks" (CSS) etwas fuer Dich:
        http://www.google.com/search?q=box+model+hack

        overflow:scroll;
                      overflow:auto;
        Der erste Befehl ist für Mozilla, der zweite für den IE.

        Ich denke, es ist trotzdem nicht sinnvoll, zwei widerspruechliche
        Dinge in einer Definition zu haben...

        Gruesse,

        Thomas

        [1] http://gutfeldt.ch/matthias/articles/doctypeswitch.html

        1. Du musst ja nur das MS IE-spezifische in einer zweiten Datei auslagern.
          Und diese mit Conditional Comments _nach_ der andern einbinden,
          damit die Angaben ueberschrieben werden.

          Vielleicht liegt Dein "Problem" ja auch nur am kaputten Box Model,
          das der MS IE bis 5.5 immer hatte und auch in Version 6.0 im "Quirks Modus" [1]

          Hi Thomas,

          komme erst jetzt dazu deine Nachricht zu lesen. Genau wie du oben beschrieben hast, habe ich es gemacht.

          Ja, das Box Model ist der Übeltäter. Danke für die Google Links und für die kometente Hilfe.

          Gute Nacht,

          Steve

        2. Hi,

          overflow:scroll;
                        overflow:auto;
          Der erste Befehl ist für Mozilla, der zweite für den IE.
          Ich denke, es ist trotzdem nicht sinnvoll, zwei widerspruechliche
          Dinge in einer Definition zu haben...

          Ist es auch nicht - es wirkt sich auch nicht so aus, wie Steve das gerne hätte.
          Auch im Mozilla überschreibt bei gleich spezifischem Selektor, was hier sicher gegeben ist, die spätere Angabe die frühere.

          Einfach mal mit
          body
          {
            background-color:blue;
            background-color:red;
          }
          ausprobieren.

          cu,
          Andreas

          --
          Der Optimist: Das Glas  ist halbvoll.  - Der Pessimist: Das Glas ist halbleer. - Der Ingenieur: Das Glas ist doppelt so groß wie nötig.
          http://mud-guard.de/? http://www.andreas-waechter.de/ http://www.helpers.de/