Above answers considers only Design aspect . I am listing it in SEO aspects.
When to use
- When Your Image need to be indexed by search engine
- If it has relation to content not to design.
- If your image is not too small ( not iconic images ).
- Images where you can add
alt
and title
attribute.
- Images from a webpage which you want to print using print media css
When to use CSS background-image
- Images Purely Used to Design.
- No Relation With Content.
- Small Images which we can play with CSS3.
- Repeating Images ( In blog author icon , date icon will be repeated for each article etc.,).
As i will use them based on these reasons. These are Good practices of Search Engine Optimization of Images.