iframes im IE6
Sebastian
- browser
Hallo Experten!
Hab da ein Problem mit dem IE6:
Auf meiner kleinen Seite http://sossamon.arcq.de habe ich ein Guestbook (http://sossamon.arcq.de/guest.html), das ein php-Seite in einem iFrame anzeigt. ALso
(...)
<div id="content">
<div class="main">
<div id="gbook">
<iframe src="http://sossamon.arcq.de/gbook/gbook.php" frameborder="0">
Your Browser doesn't support iframes</iframe>
</div>
</div>
</div>
(...)
CSS:
#gbook iframe {
min-height:400px; /*Fix for Firefox*/
width:97%;
height:100%;
}
In "body", "main" und "content" ist nichts hierfür relevantes drin, insb. keine height-Angaben.
Wenn ich das im IE oder Firefox öffne, sieht alles ok aus, bis ich die Seite reloade. Dann plötzlich schrumpft der iframe im IE auf eine winzige Höhe zusammen. Hat jemand von euch dafür eine Erklärung für dieses merkwürdige Verhalten?
Ach ja: Hab gelesen, das die CSS Eigenschaft height:100% für den iframe sich auf den Container bezieht (hier also <div id="gbook">).
Dessen Höhe ist aber ist auf 100% vom "main" - und der ist "auto" bzw ohne Angaben. Im Prinzip ist das VErhalten vom IE ja dann also richtig, nur warum klappt es trotzdem über den Link (nur halt beim Reload nicht mehr)??
Und komm ich irgendwie drumherum, eine feste Höhe für den "Parent" vom iframe anzugeben?
Vielen Dank im Vorraus.
Sebastian
P.S.
Der Firefox zeigt komischerweise einen nicht-scrollbaren Scrollbalken an... Naja ich wollte sowieso scrolling="no" angeben...
Hi,
Auf meiner kleinen Seite http://sossamon.arcq.de habe ich ein Guestbook (http://sossamon.arcq.de/guest.html), das ein php-Seite in einem iFrame anzeigt.
warum?
Wenn ich das im IE oder Firefox öffne, sieht alles ok aus, bis ich die Seite reloade. Dann plötzlich schrumpft der iframe im IE auf eine winzige Höhe zusammen. Hat jemand von euch dafür eine Erklärung für dieses merkwürdige Verhalten?
ja, Du:
Ach ja: Hab gelesen, das die CSS Eigenschaft height:100% für den iframe sich auf den Container bezieht (hier also <div id="gbook">).
Eben. 100% von etwas Unbestimmten sind ... wie viel?
Dessen Höhe ist aber ist auf 100% vom "main" - und der ist "auto" bzw ohne Angaben.
Genau wie das <div id="gbook">. "auto" ist der Default-Wert der height-Eigenschaft.
Im Prinzip ist das VErhalten vom IE ja dann also richtig, nur warum klappt es trotzdem über den Link (nur halt beim Reload nicht mehr)??
Weil der IE CSS nicht richtig anwendet. Solange er nichts anderes hat, rät er irgend welche Werte.
Und komm ich irgendwie drumherum, eine feste Höhe für den "Parent" vom iframe anzugeben?
Nein. Warum hast Du überhaupt einen <iframe>? Magst Du Deine Besucher nicht?
Der Firefox zeigt komischerweise einen nicht-scrollbaren Scrollbalken an... Naja ich wollte sowieso scrolling="no" angeben...
Du wolltest eher die overflow-Eigenschaft verwenden. Genauer gesagt wolltest Du auf Frames verzichten.
Cheatah
Hi cheatah,
vielen Dank für deine Anregungen, hab das iframe jetzt entsorgt und das php ins html eingebunden (Missionierung erfolgreich ;).
Aber: wenn bei geschildertem Aufbau die richtige Größe =Null wäre, macht dann nicht der Firefox genauso einen Fehler, wenn der das iframe größer macht?
Besten Dank nochmal,
Sebastian
Hi,
vielen Dank für deine Anregungen, hab das iframe jetzt entsorgt und das php ins html eingebunden (Missionierung erfolgreich ;).
*g* :-)
Aber: wenn bei geschildertem Aufbau die richtige Größe =Null wäre, macht dann nicht der Firefox genauso einen Fehler, wenn der das iframe größer macht?
http://www.w3.org/TR/CSS21/visudet.html#propdef-height:
"""
<percentage>
Specifies a percentage height. The percentage is calculated with respect to the height of the generated box's containing block. If the height of the containing block is not specified explicitly (i.e., it depends on content height), and this element is not absolutely positioned, the value computes to 'auto'. [...]
auto
The height depends on the values of other properties. See the prose below.
"""
Die "prose below" ist umfangreich und hinreichend abstrakt, sollte Firefox aber eine sinnvolle Umsetzung bestätigen.
Cheatah