No post acima já tem várias formas
Show de bola, para complementar seu argumento, trago aqui a correção do código centralizando a div corretamente com as suas sujestões.
<body>
<div class="container">
<div class="content"
style="width: 50px; height: 200px; background: red;">
abc
</div>
</div>
<script>
function responsiveDiv() {
const container = document.querySelector('.container');
const content = document.querySelector('.content');
const maxWidth = parseInt(content.style.width, 10);
const windowWidth = window.innerWidth;
const margin = (windowWidth - maxWidth) / 2;
container.style.marginLeft = margin + 'px';
container.style.marginRight = margin + 'px';
}
window.addEventListener('resize', responsiveDiv);
responsiveDiv();
</script>
</body>