IE6中fixed防抖大杂烩

方法1

.fixed {  
position
: fixed;
_position
: absolute;
_top
: expression(eval(document.documentElement.scrollTop));
}
html
{
_text-overflow
:ellipsis;
}

方法2

.fixed{  
position
: fixed;
_position
: absolute;
_top
: expression(eval(document.documentElement.scrollTop));
}
html
{
_background
: url(xx.jpg) fixed;
}

基本原理:

IE有一个多步的渲染进程。当你滚动或调整你的浏览器大小的时候,它将重置所有内容并重画页面,这个时候它就会重新处理css表达式。这会引起一个丑陋的“振动”bug,在此处固定位置的元素需要调整以跟上你的(页面的)滚动,于是就会“跳动”。

解决此问题的技巧就是:强制页面在重画之前先处理CSS。因为是在重画之前处理CSS,它也就会同样在重画之前首先处理你的CSS表达式。这将让你实现完美的平滑的固定位置元素!

posted @ 2011-08-24 09:22 learn_javascript 阅读(...) 评论(...) 编辑 收藏