如果已安装,请在IE8中查看at this fiddle。
每当您悬停或取消悬停图像时,都会从服务器再次获取它。即使在同一页面中,IE8也不会缓存图像。这是因为IE在图像上没有看到任何缓存标题,因此决定它无法缓存它。
添加像max-age:300
这样的缓存标题“在给定的持续时间内解决”它:悬停/取消开关将持续5分钟而不会闪烁。
这个解决方案不是很好,因为时间限制(闪烁将在5分钟后恢复),并且因为它实际上会伤害其他浏览器 - 如果我理解正确,它们可能会在时间流逝后闪烁,在今天我在其他浏览器上没有看到任何闪烁(Firefox,Chrome,甚至IE9在没有标题的情况下都能很好地工作)。
Sprites是另一种解决方案,实际上可能是更好的整体解决方案 - 但是假设在实现这一点之前/之后的一秒钟,我们想要找到另一个更好的HTTP头来发送它只会修复IE,而不是在同一会话中强加特定的缓存限制。基本上,我希望标题说“可以为给定的页面/会话缓存它”。
有这样的野兽吗?
答案 0 :(得分:0)
您的问题的答案是您的问题没有解决方法。 只有一段特殊的代码才能消除闪烁。