Hallo,
ich habe ein Script, welches mir einen DIV-Bereich beim Scrollen der Seite mitscrollt.
Hm, es sieht eher so aus, als sollte das DIV("Dies ist ein Testtext :-)") _nicht_ mitscrollen, also imme an Position top:150px; am rechten Seitenrad bleiben.
Hierfür benötigt man für moderne Browser kein JavaScript mehr. Das geht mit CSS position:fixed. Für den IE (bis 6) benötigt man Workarounds, weil dieser position:fixed nicht umsetzt. Manchmal kommen diese Workarounds auch ohne JavaScript aus.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>CSS position:fixed</title>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<style type="text/css">
* { margin:0; padding:0; }
#content {background-color:#00FFAF;}
#fixed {background-color:#FF7F7F; position:fixed; top:150px; right:0;}
</style>
<!--[if ie]>
<style type="text/css">
html, body { height:100%; overflow:hidden; }
#content {height:100%; overflow:auto;}
#fixed {position:absolute; top:150px; right:15px;}
</style>
<![endif]-->
</head>
<body>
<div id="fixed">Das ist ein Testtext ;-)</div>
<div id="content">
Das ist der bewegliche Seiteninhalt mit beliebig viel Text ...
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
</div>
</body>
</html>
Erläuterung:
Für moderne Browser wird einfach position:fixed verwendet.
Für den IE wird ein Conditional Comment eingesetzt, in dem _nur_ für ihn HTML und BODY in der Höhe auf 100% Browserfensterhöhe begrenzt werden und keinen überfließenden Inhalt mehr anzeigen (overflow:hidden;). Dadurch wird das DIV#content zum eigentlichen BODY mit 100% Browserfensterhöhe, welcher bei überfließendem Inhalt Scrollbalken anbietet (overflow:auto;). Da das DIV#fixed nun außerhalb dieses Pseudo-BODYs liegt, wirkt position:absolute hier nun ähnlich wie position:fixed.
viele Grüße
Axel