Also, changing a true background (either color or image) can only be done all at once. No ability to make nice fade effects, etc.
So the better way is to use overlaid <div>s, with (say) your main div with the text, etc., having a higher z-index than the other one. Now you can put an <img> in the "behind" div and use fade effects, etc., on it.
An optimist sees the glass as half full.
A pessimist sees the glass as half empty.
A realist drinks it no matter how much there is.