Hallo liebe Forengemeinde!
Ich weiss - das Thema ist schon häufig genug durchgekaut worden, aber trotz gründlicher Recherche hier im Forum und auch auf anderen Seiten (z.B. quirksmode.org) habe ich immer noch das Problem, einen IFRAME exakt so hoch zu bestimmen, dass die darin enthaltene Seite ohne Scrollbalken und vollständig angezeigt wird. Und natürlich soll diese Höhe nicht höher sein als erforderlich.
Im speziellen Fall liegen die Seiten im IFRAME ohne DOCTYPE vor, so dass vom quirks mode auszugehen ist (IE, FF und Opera weisen sämtlich für document.compatMode den Wert "BackCompat" aus).
Für den IE ist die Sache nun sehr einfach, denn document.body.scrollHeight weist immer die tatsächlich benötigte Höhe inkl. margin des BODY Elements aus.
Und genau letztere ist im FF und Opera das Problem, weil ich sie nicht kenne. Dort bekomme ich die Höhe in document.documentElement.offsetHeight - aber exkl. margin.
Wie ermittle ich die tatsächliche margin des BODY Elements, wenn sie nicht per Attribut festgelegt ist? Oder gibt es vielleicht bessere Methoden, um mein Ziel zu erreichen?
Ich habe einen gewissen Einfluss auf den Inhalt der anzuzeigenden Seiten, möchte diese aber eigentlich nicht verändern. Ich könnte z.B. die margin des BODY Elements auf 0 setzen und ein leeres DIV Element anhängen und dann wäre dessen offsetTop exakt die benötigte Höhe in allen Browsern. Diese Lösung möchte ich aber gern vermeiden.
Jemand eine Idee?
Ralf