One problem that developers face is an annoying “image flicker” that sometimes shows up when using CSS image references in IE.
We encountered this during post production testing few days back. The server started getting requests in thousands for the images used in the navigation menu thereby increasing the load on it’s CPU, which was reflected in the site’s performance as it was getting slower and slower with every passing minute.
We analysed the page headers with ieHTTPheaders explorer bar for Microsoft Internet Explorer (which displays the HTTP Headers sent and received by IE as you surf the web) and found that there were multiple requests sent to the server for a single image on a page. The caching too was working fine.
So why was this happening in IE?
Internet Explorer 6 seems to check for a newer version of the background-image css property on links (A tag) every time you move the mouse over a link.
This was fixed by using the BackgroundImageCache MSHTML command identifier. Just add some javascript lines of code inside the HEAD of the page:
try {
document.execCommand("BackgroundImageCache", false, true);
} catch(err) {}
After implementing this fix for IE, the requests to the server were monitored at peak. The image requests were significantly reduced and thereby reducing the load on the server’s CPU.
Read forensic analysis of what this command does at Dan Popa’s blog
Credits: Mister-Pixel.com
Update:
Microsoft itself claims that the available memory decreases if you view a webpage containing background color and background images. Don’t know how can they allow such a bug to get through their testing?
Read complete details on their Help and Support page.