JSFiddle - React, Tailwind, and code Playground
HTML
<div id="scrollable">
<div id="centered">
</div>
</div>
<div>
<button id="scale3" type="button">
Scale 3
</button>
<button id="scale05" type="button">
Scale 0.5
</button>
</div>
CSS
#centered {
background-image: url("http://lorempixel.com/200/200/sports/1/");
background-size: 100% 100%;
height: 200px;
left: 50%;
margin-left: -100px;
margin-top: -100px;
position: absolute;
top: 50%;
transition: all 1s ease-out;
width: 200px;
}
#scrollable {
border: 1px solid red;
height: 300px;
overflow: auto;
position: relative;
width: 300px;
}
JavaScript
var originalWidth = 200;
$('#scale3').on('click', function () {
var dimension = originalWidth * 3;
$('#centered').css({width: dimension, height: dimension, 'margin-left': -dimension / 2, 'margin-top': -dimension / 2});
});
$('#scale05').on('click', function () {
var dimension = originalWidth / 2;
$('#centered').css({width: dimension, height: dimension, 'margin-left': -dimension / 2, 'margin-top': -dimension / 2});
});