Если известны размеры картинки, можно сделать так:
1. дать блоку position: relative и на выбор (роли не играет) padding-top или padding-bottom в процентах (высота рисунка / ширина рисунка * 100)
2. внутри абсолютно спозиционировать другой блок (все координаты по нулям)
3. внутрь абсолютного блока положить картинку width: 100%