JSFiddle - React, Tailwind, and code Playground

HTML

<div class="container">
      <div class="block">Foo</div>
      <div class="block">Foo</div>
      <div class="block">Foo</div>
      <div class="block">Foo</div>
      <div class="block">Foo</div>
      <div class="block">Foo</div>
      <div class="block">Foo</div>
      <div class="block">Foo</div>
      <div class="block">Foo</div>
      <div class="block">Foo</div>
      <div class="block">Foo</div>
      <div class="block">Foo</div>
      <div class="block">Foo</div>
      <div class="block">Foo</div>
      <div class="block">Foo</div>
      <div class="block">Foo</div>
      <div class="block">Foo</div>
      <div class="block">Foo</div>
      <div class="block">Foo</div>
      <div class="block">Foo</div>
      <div class="block">Foo</div>
      <div class="block">Foo</div>
      <div class="block">Foo</div>
</div>

CSS

.container {
  margin: 0 auto;
  max-width:960px;
  background-color: gold;
}

.block {
  background-color: #ddd;
  border:1px solid #999;
  display: block;
  float: left;
  height: 100px;
  margin: 4px 2px;
  width: 100px;
}

JavaScript

$(document).ready(function(){
    setContainerWidth();
});

$(window).resize(function(){
   setContainerWidth();
});

function setContainerWidth()
{
    $('.container').css('width', 'auto'); //reset
    var windowWidth = $(document).width();
    var blockWidth = $('.block').outerWidth(true);
    var maxBoxPerRow = Math.floor(windowWidth / blockWidth);
    $('.container').width(maxBoxPerRow * blockWidth);
}