@keyframes ball-grid-beat { 50% { opacity: 0.7; } 100% { opacity: 1; } } .ball-grid-beat { width: 57px; } .ball-grid-beat > div:nth-child(1) { animation-delay: 0.38s; animation-duration: 1.28s; } .ball-grid-beat > div:nth-child(2) { animation-delay: -0.02s; animation-duration: 0.63s; } .ball-grid-beat > div:nth-child(3) { animation-delay: -0.05s; animation-duration: 1.47s; } .ball-grid-beat > div:nth-child(4) { animation-delay: -0.17s; animation-duration: 1.11s; } .ball-grid-beat > div:nth-child(5) { animation-delay: 0.72s; animation-duration: 1.32s; } .ball-grid-beat > div:nth-child(6) { animation-delay: 0.51s; animation-duration: 1.07s; } .ball-grid-beat > div:nth-child(7) { animation-delay: 0.52s; animation-duration: 1.25s; } .ball-grid-beat > div:nth-child(8) { animation-delay: 0.17s; animation-duration: 0.89s; } .ball-grid-beat > div:nth-child(9) { animation-delay: 0.38s; animation-duration: 1.56s; } .ball-grid-beat > div { background-color: #55595c; width: 15px; height: 15px; border-radius: 100%; margin: 2px; animation-fill-mode: both; display: inline-block; float: left; animation-name: ball-grid-beat; animation-iteration-count: infinite; animation-delay: 0; }