JSFiddle - React, Tailwind, and code Playground
HTML
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
CSS
body {
background: #20262E;
display: grid;
}
div {
border: 1px solid #fff;
padding-top: 100%;
}
JavaScript
$(window).on('load resize', function(){
var c = $(window).width() > 767 ? 50 : 130,
w = Math.floor($(window).width() / c);
$('body div').remove();
for (var i = 0; i < w * w; i++) {
$('body').append($('<div/>'));
}
$('body').css('grid-template-columns', 'repeat(' + w + ', 1fr)');
})