If you add a image to your browser's DOM, IE6 will not check its cache to see if it already downloaded the image but will, instead, re-retrieve it from the server. I have not found any combination of HTTP response headers (of the ensuing image request) to convince IE6 that it can cache the image: Cache-control, Expires, Last-modified.

Some suggest you can return a 304 of the subsequent image requests to tell IE6 "you already got it" but I want to avoid the whole round trip to the server in the first place.


A quick google mentions the "Expires" header, which you've already tried. Digging deeper, it mentions the ETag header:

Hope this helps.

+1  A: 

Maybe this will work? (is the same behaviour like hovering on links with css background image)

Ionut Staicu