Eros Candelaresi: .width (auf IE) = .width (auf NS) + paddings??

Moin!

Netscape und IE haben offensichtlich unterschiedliche Ansichten darüber, wie die .width-Eigenschaft von DIVs (und vermutlich anderen Elementen) zu definieren ist.
Während ein DIV mit width:100px auf IE auch wirklich 100 Pixel breit ist, ist es aus NS 100px + Ränder links und rechts + Paddings links und rechts groß.
Mein Problem bei der Sache ist, dass ich schon ein recht feines, aber aufwändiges Menü entwickelt hab, das auf dem IE pixelgenau passt.
Jetzt sind 2px border dabei, 20px padding-left und das ganze sieht auf dem NS tierisch blöd aus.
Funktionieren muss das ganze nur auf NS6 und IE 5.5+. Gibt's irgendeinen Trick, wie man NS dazu bringt, die Außenbreite zu nehmen?
Dynamisches CSS gibts ja leider noch nicht ;). Und per JavaScript nachträglich alle .width-Eigenschaften zu ändern... soweit wollt ich mich (noch) nicht herablassen...

Gruß und Dank,
Eros

  1. hi

    Während ein DIV mit width:100px auf IE auch wirklich 100 Pixel breit ist, ist es aus NS 100px + Ränder links und rechts + Paddings links und rechts groß.

    jau. Netscape hält sich hierbei an die Version vom W3C.

    Funktionieren muss das ganze nur auf NS6 und IE 5.5+. Gibt's irgendeinen Trick, wie man NS dazu bringt, die Außenbreite zu nehmen?

    ..schade, IE5.5 - der IE6 macht's nämlich inzwischen richtig...

    Ich würde mich daher eher auf die richtige Berechnung verlassen, also width:76px (aufwand ist ja der gleiche und es ist zukunftssicherer) und für den IE5.5 das ganze über irgendeinen Evil-Hack wieder "zurechtbiegen"... Akzeptiert der nicht auch width:100 [ohne Einheit]? Evtl. kann man damit was erreichen...
    Motto: Bug + Bug = Feature

    gruss Kai

  2. Der Fehler liegt beim IE. Was du brauchst, ist "Tanteks Hack". Siehe URL.
    Viel Spaß.

    Gruß Lydia

    1. hi

      Der Fehler liegt beim IE. Was du brauchst, ist "Tanteks Hack". Siehe URL.

      geht der nicht im IE6, der das ja endlich richtig kann nach hinten los?

      gruss Kai

      1. "Tanteks Hack"

        geht der nicht im IE6, der das ja endlich richtig kann nach hinten los?

        Ganz ehrlich: Keine Ahnung!
        Wenn ich den OP richtig verstanden habe ("Funktionieren muss das ganze nur auf NS6 und IE 5.5+"), spielt das ja keine Rolle. Jedenfalls zeigt dieser Fall mal wieder sehr schön, wo man mit der Pixelschubserei hinkommt. <g />

        Besser als Tanteks Tricksereien sind relative Angaben für die Außenabstände, meine ich.

        Gruß Lydia

  3. Hallo,

    Netscape und IE haben offensichtlich unterschiedliche Ansichten darüber, wie die .width-Eigenschaft von DIVs (und vermutlich anderen Elementen) zu definieren ist.

    width und auch height beziehen sich auf die Breite bzw. Hoehe des Inhaltes, ohne border und padding.
    Im standards-compliant mode sieht das der IE 6 auch so.

    MfG, Thomas

    1. Moin!

      Im standards-compliant mode sieht das der IE 6 auch so.

      Und lässt sich dieser standards-compliant mode irgendwie einschalten? Damit wäre mir nämlich sehr geholfen. Wär auch die sauberste Lösung.

      Gruß und Dank,
      Eros Candelaresi

      1. Moin nochmal!

        Und lässt sich dieser standards-compliant mode irgendwie einschalten? Damit wäre mir nämlich sehr geholfen. Wär auch die sauberste Lösung.

        Ok! Habs herausgefunden. Kommt davon, wenn man zu faul ist, einen DOCTYPE einzugeben *g*.

        Grüßle,
        Eros Candelaresi