Картинка внутри блока как его фон

Спорные методы.

Самое удачное решение, кажется мне, это использовать CSS свойство object-fit. https://developer.mozilla.org/ru/docs/Web/CSS/object-fit.  Чуть подумав можно подогнать как нужно, единственное - нет поддержки IE: https://caniuse.com/#feat=object-fit. Но как-то можно с использованием JS например поискать - object-fit polyfill в гугле, найдём https://github.com/bfred-it/object-fit-images .

Так же, если есть возможность, инлайн стиль для фона блока, но не всегда возможно: https://getuikit.com/v2/docs/cover.html 

Вот ещё какие-то примеры на JS, но не проверялись.

 

Ссылки и благодарности

https://toster.ru/q/158063