I believe if you have an image in a css file, once the CSS file loads it will load all images, that way during navigation i believe the user wont wait as much. Where as an img in html, it loads at every page.
Background-image should only be used for images not conveying any information (decoration's images).
If the image vehicle information it must be placed in the (x)html with the img element to provide the alternative text in case of the image's not visible (text browser, loading problem, ...).
__________________ As you've seen, English is not my mother language. Please help me to improve it :)