在web开发中,经常需要将元素固定在某个位置,不随浏览器的拖动而改变。
这时候,你可能很快会想到使用position:fixed;方式去处理,不错这个方案是标准的,并且在ie6+,ff等浏览器中都能很好的渲染,但ie6却不支持此属性。
因ie6在目前的用户量仍然很大,我们必须将其考虑在内。
其实早些时候在网上已经涌现了一些解决方案,但归结如下:
1.监听滚动条的拖动,动态改变元素的位置。
2.利用ie所支持css中的expression,在里面写script去动态获取位置。
但是上面的两种方法都会造成元素的刷新,虽然第二种会好些,但仍然不是我们要的效果,在这里以上两种实现方法,不做细节讨论,主要给大家介绍一种方法:
1.如果是非ie6,那么利用position:fixed;方式。
2.如果是ie,通过将body元素高定位100%,并做一些处理。
下面是代码演示和下载:
http://www.scriptlover.com/controls/FixedPosition/
转载请注明出处,谢谢。