CSS背景中的图片是否在HTML <img>中的所有图片加载之前加载?

3
如果我想快速加载任何图像,是不是应该使用CSS背景而不是标签?我认为这种差异只会在低速互联网连接中显示出来。
我看到许多与仅使用CSS预加载有关的文章,它们都在CSS背景中使用图像。

http://perishablepress.com/press/2008/04/15/pure-css-better-image-preloading-without-javascript/

http://perishablepress.com/press/2007/07/22/css-throwdown-preload-images-without-javascript/

http://divitodesign.com/css/create-an-image-pre-loader-with-css-only/


不过,我看到许多与仅预加载CSS有关的文章,它们都在CSS背景中使用图像。 - Jitendra Vyas
2个回答

1

一切都取决于事情发生的顺序。浏览器可以自由地尽早开始处理事情,因此,在具有在头部定义的CSS的平均页面中,它能够在从文档主体中这样做之前开始请求和接收来自CSS的图像。

所以简而言之,答案是肯定的。

但是...请记住,它实际上并没有更快地加载图像。您所做的只是更改加载顺序,而不是绝对速度。图像仍将花费相同的时间来加载。如果您将所有内容从正文中移出并放入头部的CSS中,则仍然需要优先考虑哪些内容首先加载。所以你又回到了起点。您无法使所有内容比其他内容更快。


我认为我在问题中提到的所有链接都是在页面中使用HTML代码来预加载图像,因此HTML代码没有任何意义。所有这些方法在语义上都不正确。我是对的吗? - Jitendra Vyas
抱歉,Jitendra,我不理解你的问题。你能澄清一下吗? - graphicdivine
请查看这篇文章http://perishablepress.com/press/2008/04/15/pure-css-better-image-preloading-without-javascript/,作者建议在代码中添加一个隐藏的div。您认为这样做符合语义吗? - Jitendra Vyas

0

这显然是与浏览器相关的。此外,没有逻辑上的理由表明应该这样做,即使在低速连接下也不会有太大的影响。即使在页面上加载图像和CSS规则中的图像之间存在200毫秒的延迟,最终用户也永远不会注意到它。

如果您必须为低速连接创建网页,则解决方案并不是以这种方式“优化”。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接