CSS es más veloz que cargar imágenes, incluso que javascript —o al menos más limpio, menos pesado y usa menos recursos.
Yo como orden de preferencia pondría:
- CSS
- Javascript
- Imágenes
Como normal general, tampoco es una cosa inamovible cual constitución.