修复IE背景图片闪烁或不见的现象
为什么会出现闪烁或不见现象?IE6在处理A标签的CSS定义中的背景图片属性时候,当你把鼠标移上去的时候每次都会去检查是否有一个新的版本。
你可能会看到背景图片短暂或更长的闪烁。可能因为,网速,CPU速度或者背景图片大小;你也可能看不图片的闪烁,但会注意到鼠标指针由默认的形状变成闪烁的形状,意味着这里在运行着一些东西。如果你改变了IE的“temporay internet files”设置为”每次访问此页时检查”,那么你一定可以看到闪烁现象。
如何解决这个问题?事实上非常简单。只要添加几行javascript代码到页面head区域即可。
try { document.execCommand("BackgroundImageCache", false, true); } catch(err) {}
注意:
无论页面刷新还是浏览到其他页面,这个修复都将起作用。
如果你想在同一个浏览会话中再次看到闪烁现象,你必须显式禁止这个修补。
还有一个纯css方式,在css中加入如下代码
html { filter: expression(document.execCommand("BackgroundImageCache", false, true)); }
鉴于expression严重影响浏览器效率,建议采用javascript方式。