Чтобы не было, например, "обрезаний" при разных разрешениях экрана или "дополнения" пустых мест его дублированием
Геометрия говорит нам, что если пропорции блока и изображения не совпадают, то возможны три варианта:
- поля
- обрезка лишнего
- искажение пропорций
Поскольку, без искажений пропорций из одного изображения так сделать невозможно, то остается один вариант - подгружать разные файлы.
Но кроме пропорций, есть ещё поддержка форматов и плотность пикселей. Так что, сложность тут не одна.
Какие размеры файла желательны (в байтах)?
Минимальные. При этом нужно сохранять достаточное качество.
Этот вопрос не имеет смысла, даже если вы скажете размер вьюпорта/блока, но не покажете картинку. Потому что одна сожмется прекрасно, а другая заметно потеряет в качестве.
Для ретины и разных форматов файлов используйте
image-set
Для разных размеров -
@media
Для оптимизации размеров - форматы
webp
,
avif