When I have the same image used for different elements (sprite images) I usually don't call that image again as this is a new HTTP request.
I rather use:
element1 {
background: url(someImage.png);
}
element2 {
background-image: inherit;
}
Is this saving HTTP requests?
Or if the browser is smart and I can use:
element1 {
background: url(someImage.png);
}
element2 {
background: url(someImage.png);
}
Is the browser going to make a new HTTP request? Or it knows that I already have this image cached?
The question is: Do i gain something by using example 1?