HTML背景图像
当我将图像包含为 为什么图像会被请求两次(或者可能三次)?这是我可以避免的行为吗?如果是,怎么做 [编辑] 我在观看GoogleAppEngine本地服务器进程时注意到了这一点,因此我相当确定它实际上并没有被浏览器缓存(如果我在firebug或webkit inspector中看到它的话,可能就是这样)HTML背景图像,html,css,image,Html,Css,Image,当我将图像包含为 为什么图像会被请求两次(或者可能三次)?这是我可以避免的行为吗?如果是,怎么做 [编辑] 我在观看GoogleAppEngine本地服务器进程时注意到了这一点,因此我相当确定它实际上并没有被浏览器缓存(如果我在firebug或webkit inspector中看到它的话,可能就是这样) 我在Google Chrome、IE7和Firefox 3中看到了这一点。对我来说,这似乎是一个浏览器缓存问题 您可以尝试像这样预加载它: <html> <head>
我在Google Chrome、IE7和Firefox 3中看到了这一点。对我来说,这似乎是一个浏览器缓存问题 您可以尝试像这样预加载它:
<html>
<head>
<style>
div{
background: transparent url(/img/stuff.png) no-repeat;
}
div:hover{
background: transparent url(/img/stuff.png) no-repeat 25px 0px;
}
</style>
</head>
<body>
<img alt="" src="/img/stuff.png"/>
<div>
</div>
</body>
</html>
但我不确定这是否有效。这是IE6的一个已知问题,您使用的浏览器有问题吗 这里列出了几种原因和修复方法:
答案取决于您如何发现多次请求的图像。您是否在客户端观看Web服务器日志或使用Firebug之类的东西?试着在你的问题中发布更多细节 无论如何,看起来浏览器应该从缓存中获取图像。我也有同样的行为。 图像请求了两次,它有两个来自服务器的请求,一个来自css文件作为请求引用,另一个来自aspx或htm文件作为请求引用。
我在firebug 1.5和其他HTTPparser程序中尝试了这一点。我在自己使用大量图像的大型web应用程序中也看到过类似的行为。即使使用JavaScript预加载,图像有时也会被第二次请求(尽管我没有仔细观察是否有超过两次的请求)
我的结论是,浏览器的缓存可能已满,熵可能已启动,删除了旧项目或当前未使用的项目。请尝试增加浏览器的最大缓存大小,看看这种行为是否继续。此外,在Firefox中,您可以签出。我发现一些浏览器没有加载显示为“无”的图像。出于兴趣,你为什么在你的内容和CSS中使用相同的图像?它们都是为了装饰目的?还是都是为了提供信息?@ndorfin我相信这是一个按钮背景,我将其作为一个单独的图像重复使用。谢谢Justin!我从来没有使用过about:cache,这似乎是一个很棒的工具。是的,我刚刚发现pa我自己也是。
<img alt="" src="/img/stuff.png" style="display: none;"/>