Я пропорционально масштабирую изображение, чтобы заполнить все доступное пространство, используя предложенное решение здесь .В Chrome все работает нормально, но в Firefox есть проблема с рамкой:
Chrome: ![enter image description here](https://i.stack.imgur.com/fkgHl.png)
Firefox: ![enter image description here](https://i.stack.imgur.com/i8EQt.png)
Код с примером доступен здесь (codesandbox) .Я хотел бы понять, что там происходит в Firefox и как его решить.
var wrapper = document.querySelector('#scaler');
var iteration = 20
var direction = 1;
setInterval(function() {
direction = iteration > 40 ? -1 : iteration < 20 ? 1 : direction;
iteration+=direction;
wrapper.style.transform = "scale(" + (iteration * .01) + ")"
}, 1000)
.App {
font-family: sans-serif;
text-align: center;
margin-top: 50px;
}
.root {
width: 100%;
text-align: center;
position: relative;
-webkit-flex: 1 1 auto;
-ms-flex: 1 1 auto;
flex: 1 1 auto;
max-height: 40vh;
height: 100vh;
}
.image-wrapper {
height: 100%;
width: 100%;
position: absolute;
padding: 0 10px;
box-sizing: border-box;
will-change: opacity, transform;
}
.overlay-wrapper {
position: absolute;
left: 50%;
top: 50%;
-webkit-transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
-webkit-transform-origin: center center;
-ms-transform-origin: center center;
transform-origin: center center;
border: 1px magenta solid;
}
.overlay-wrapper img {
display: block;
}
<div id="root">
<div class="App">
<div class="root">
<div class="image-wrapper" id="scaler" style="transform: scale(.2);">
<div class="overlay-wrapper"><img alt="" src="https://dummyimage.com/1420x802/ccc/333"></div>
</div>
</div>
</div>
</div>