sprite - 缓存问题 - 特别是在chrome上

时间:2012-08-02 08:20:01

标签: html css google-chrome caching sprite

我有以下问题。

我们有一个网站。我改变了一些精灵,使它看起来更酷。问题是我们已经拥有了用户,他们的浏览器很可能会缓存旧图像。无论如何强制要求他们提供图像的新请求?

注意:在一些刷新后的firefox(默认设置)上请求新的精灵,但看起来像chrome(默认设置)只是不请求它们,除非你明确清除缓存。

另一个注意:一种方法是重命名精灵,但这也意味着我们必须在css文件中找到它们并在那里重命名等等。

有一个美好的一天和帮助。

3 个答案:

答案 0 :(得分:4)

一种解决方案是在图像名称的末尾添加一个随机数,例如

.mybackground {
    background-image:url(../images/background.jpg?16549);
}

如果您可以通过某些JS或PHP或任何适合您的方式加载页面时随机编号。你可以从你的样式表中取出图像,然后将它放在标题包含的样式标记中,或者等等,这样你就可以对它们做随机数位。 (不确定你是否可以直接进入样式表)

答案 1 :(得分:1)

重命名声音更可行。

,你最有可能使用(shell)脚本自动化它。所以它不应该太糟糕。

答案 2 :(得分:0)

(大多数IDE都具有在多个文件中查找和替换的功能,您可以使用它来更改CSS文件中精灵的路径。最好的办法是为现在的新图像命名。

至于稍后,我建议您查看网络服务器的cachingexpires标头。 (这些是Apache文档的链接,如果你的web服务器不是apache,它会有同样的想法,但需要不同的实现。)