Ну, вы можете использовать псевдоэлемент внутри контейнера ...
.parent:before {
content: '';
position: relative;
z-index: -1;
width: calc(4900px * 0.25);
height: calc(7000px * 0.25);
}
Что должно вызвать переполнение.Я использую отрицательный z-индекс, чтобы убедиться, что он не взаимодействует с контентом.
Примечание: если масштабирование динамическое, вероятно, проще создать пустой элемент (псевдоклассы трудно контролировать через JS), а затем динамически управлять высотой / шириной, используя Javascript.
<div class="parent">
<div class="spacer"></div>
<div class="child">
</div>
</div>
И CSS
.spacer {
content: '';
position: relative;
z-index: -1;
width: calc(4900px * 0.25);
height: calc(7000px * 0.25);
}
Редактировать: Упс только что понял, что нужно идти меньше оригинала.Вышеописанное сработает, если новое переполнение будет больше начального состояния ...
В этом конкретном случае вы можете избежать преобразования все вместе и вместо этого масштабировать фоновое изображение.Затем масштабируйте элемент, используя вашу функцию JS.В этом случае фон будет масштабироваться в соответствии с размером контейнера.
.child {
background-image: url("https://i.redd.it/7ifkx5z39b631.jpg");
background-size: contain;
width: calc(4900px * 0.25);
height: calc(7000px * 0.25)
}