Well.. an image is inline, surrounding it with a span seems pointless to me, surrounding it with a div would make it positionable like a block element, eh, just kinda depends on what you want to do.
*Ideally*, your markup should not be determined by what you want your css to do, they are supposed to be entirely seperate 😉 (but things never work out that way)