Hallo!
Ich nehme zwar an, dass dieses Thema schon öfter diskutiert wurde, ich habe aber leider nichts funktionierendes gefunden.
Ich möchte ein DIV (das ein Bild enthält) so fixieren, dass es beim Scrollen an einer Stelle bleibt. Es sollte im Mozilla und in IE (ab Version 6) funktionieren. Ich weiß inzwischen, dass der style 'fixed' erst ab IE 7 funktioniert.
Vielleicht kann mir jemand helfen.
Irene
Ich habe so was mal gemacht um scrollbare Frameseiten mit css Nachzubauen.
Für moderne Browser mit fixed wie du es auch gemacht haben wirst.
Da der IE<7 position : fixed nicht versteht hab ich eine zweite css geschrieben:
HTML:
<!--[if IE]>
<style type="text/css">@import url(extrawurst.css);</style>
<![endif]-->
Da habe ich mit position: absolute positioniert.
Die Boxhöhen kann man mit expression an die Fenstergröße anpassen.
HTML:
position : absolute;
top : 50px;
width : ein wert;
height: expression(document.body.clientHeight - 100 );
Diese Beispiel-Box beginnt 50px von oben und endet 50px vor dem unteren Rand.
Der IE7 versteht beide Varianten (glaube ich, hab allen IE's nur die expression-Variante geboten).
Das scrollen muß dafür im body abgeschaltet werden:
HTML:
body {overflow : hidden;}
Für nicht fixe Bereiche wieder einschalten:
HTML:
#inhalt {overflow : auto;}
Ich denke so ist es richtig.
Für eine fixe Navigation oder ein Bild funktioniert das super.
Bei meiner Framenachbastelei hab ich mich total verwurstelt. Funktionierte am Ende aber auch (irgendwie).
Ach ja, der IE6 kann nicht mit margin-top und margin-botten im gleichen Element umgehen. Er Ignoriert den lezten Wert. Ob das für den IE7 auch noch gilt weiß ich gerade nicht.