浏览器是否在CSS文件中预加载图像,无论页面使用情况如何?

时间:2012-09-17 19:10:15

标签: html css performance yslow preloading

我的一位朋友在http://analyze.websiteoptimization.com/投了一个我通过该工具制作的网站。当他回到我身边时,他坚称我的浏览器只在网站的主页上预加载了大量不相关的图像。

我回到他身边,坚持认为YSlow(以及浏览器中的其他“网络”标签)证明只有特定显示的图像和内容才会加载到主页上 - 没有别的。我坚持认为该网站的统计信息仅用于完整访问该网站,并下载所有必需的图片。

然而,他并不相信,相信某些浏览器(即IE)会预先加载那些不相关的内容。因此,他使用全局CSS样式表,然后通过加载单独的样式表将更改应用于单个页面。

我认为最佳做法是最小化对服务器的请求,而不是添加更多,这就是为什么我们有CSS精灵。我还认为浏览器从不加载图片,除非他们需要显示页面。

如果没有健康的讨论,我不相信我会接受答案。

  • 我是否认为浏览器没有在每个页面上加载所有内容?
  • 以上工具是否错误?
  • 我朋友从该工具的结果中学到的教训不正确吗?

感谢。

2 个答案:

答案 0 :(得分:1)

浏览器通常只会加载页面中实际显示的内容。 (但在一些奇特的浏览器中可能会有例外,例如Opera Mini。)

WebSiteOptimization工具只会查看HTML和CSS中引用的图像,而不是页面中实际使用的图像。

当我分析我自己的网页时,该网页有八个不同的背景图像,通过随机选择一次显示一个,该工具说所有八个图像都被加载,只是因为它们在CSS中。检查Firebug和IE开发人员工具中的网络流量表明它们不是。

答案 1 :(得分:-1)

根据我的说法

浏览器会及时加载缓存的图像,但较新的更新可以检查图像是否已更改。还有编程人员可以设置允许浏览器缓存的权限。 当使用yslow或 Google页面速​​度这是一个更好的工具时,请尝试使用control + f5刷新页面,以便在没有任何脱机文件的情况下强制重新加载站点。 您还可以根据自己的喜好设置Brower权限。

我还想添加一些关于你的最后一行,浏览器将加载代码中链接的所有图像,即使隐藏了css属性。

它总是首先在img标签中加载东西,然后在css代码中加载所有图像。

它还将按顺序处理图像请求,即先到先服务器

我希望这有帮助。