在我印象中,同一背景图片,无论在CSS重复定义多少次都只会产生一次请求,于是才有CSS Sprite的广泛运用。但是一切都是听说,我还没认真测试过。
看看这个页面:demo1
再用firebug查看请求数:

很吃惊吧,同一图片c.gif居然请求了6次,就因为我在CSS里重复定义了6次~···
再打开IE,用Fiddler看看:

没问题,只有一次请求。
把CSS作一些修改,背景图片只定义一次,再看demo2:

嗯,只有一次请求了~···
我相信这应该不是Firefox的真实行为,而是Firebug的错误理解,我想在这一点上,Firefox不会傻得连IE都不如~···
但是当我开启FF的Fildder监测时发现或许是我错了:

我也无语了~···
结论:背景还是尽量不要重复定义为好。

2009-08-24 21:04:30reply
我测了好几次,没有遇到你说的这个情况
2009-08-25 09:05:58reply
@ytzong: ctrl+F5了吗?
2009-08-25 10:33:33reply
看demo请弹出,不要在当前页面!
2009-08-25 12:33:06reply
Firebug沒有看到你所講的情況(ctrl+F5)。 IE下沒試。
2009-08-25 14:30:16reply
@omiga 估计是 ctrl+f5 的问题。
我用ctrl+shift+delete手动清空缓存和用httpwatch手动清空缓存后测试的测试的结果都是只有1个连接,而 ctrl+f5 则请求多次
搜索了一下,得到:
http://topic.csdn.net/u/20081112/17/86456632-f02f-4e90-b41b-80193ead0cea.html
http://stackoverflow.com/questions/385367/whats-the-difference-between-hit-f5-and-ctrl-f5-in-browser
2009-08-25 15:46:09reply
有这个问题
2009-08-25 18:02:34reply
FF3.0.13+Firebug1.4.2
没发现你demo1请求同一张图片6次的情况!
2009-08-27 20:23:50reply
@ytzong: 非常好~···
2009-09-24 22:46:08reply
@Max: 的确,我自己的FF3.0.11也不存在这样的问题,或许这只是FF3.5才有的。
2009-09-27 08:54:48reply
我的测试过程中,Fiddle检测都只有一个图片请求
Demo1在FF3.5下依然是有6次请求
2009-09-30 10:12:52reply
@Colinivy: 嗯,FF3.5~···