<!DOCTYPE html>
<html>

  <head>
    <link rel="stylesheet" href="style.css">
    <script src="//cdnjs.cloudflare.com/ajax/libs/Sortable/1.4.2/Sortable.min.js"></script>
  </head>

  <body>
    <ul class="sort-container" id="items">
      <li><span>A</span></li>
      <li><span>B</span></li>
      <li><span>C</span></li>
      <li><span>D</span></li>
      <li><span>E</span></li>
      <li><span>F</span></li>
      <li><span>G</span></li>
      <li><span>H</span></li>
      <li><span>I</span></li>
      <li><span>J</span></li>
      <li><span>K</span></li>
      <li><span>L</span></li>
      <li><span>M</span></li>
      <li><span>N</span></li>
      <li><span>O</span></li>
      <li><span>P</span></li>
    </ul>
    <script>
      var el = document.getElementById('items');
      var sortable = Sortable.create(el, {
        animation: 150,
      });
    </script>
  </body>

</html>
body {
  width: 100%;
  height: 100%;
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.sort-container {
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
  width: 100%;
  height: 100%;
  color: white;
}
.sort-container > li {
    cursor: move;
    list-style: none;
    flex: 0 0 16.66%;
}
.sort-container > li span {
  display: block;
      padding: 1rem;
      background: red;
    text-align: center;
    margin: 0.5rem;
}
.sort-container > li span:before {
      content: '';
      display: inline-block;
      vertical-align: middle;
      padding-top: 100%;
}
.sortable-ghost {
    opacity: 0.6;
}