si può fare anche con i css.
una delle strade percorribili è quella di inserire l'immagine in un div con dimensioni max per monitor large, poi via via che il monitor si ridimensiona attraverso le mediaquery si fa in maniera che le dimensioni diminuiscono in %.
nel css specifico dell'immagine andrà imposto un width:100%.
se poi usi un template basato su bootstrap potresti usare una classe tipo questa
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-12">
che conterrà un div con dentro l'immagine, allora dovrai solo specificare per l'immagine width:100%