<div class="spinner lower">
  <div class="outer">
    <div class="inner tl"></div>
    <div class="inner tr"></div>
    <div class="inner br"></div>
    <div class="inner bl"></div>
  </div>
</div>
<div class="spinner">
  <div class="outer">
    <div class="inner tl"></div>
    <div class="inner tr"></div>
    <div class="inner br"></div>
    <div class="inner bl"></div>
  </div>
</div>
html {
  background-image: radial-gradient(circle farthest-corner at center, #A6FF21 0%, #1E521A 100%);
  height: 100%;
}

.spinner {
  position: absolute;
  width: 128px;
  height: 128px;
  top: 50%;
  left: 50%;
  margin: -64px 0 0 -64px;
  transform: perspective( 128px ) rotateX( 45deg );
  &.lower {
    top: 60%;
    opacity: .9;
    filter: blur(30px);
    .inner {
      background: #333;
    }
  }
}

.outer {
  box-sizing: border-box;
  animation: spin 1.5s linear infinite;
  height: 100%;
}

.inner {
  position: absolute;
  border-radius: 50%;
  width: 64px;
  height: 64px;
  background: radial-gradient(circle farthest-corner at center, #fff 0%, #eee 100%);
  &.tl {
    top: 0;
    left: 0;
  }
  &.tr {
    top: 0;
    right: 0;
  }
  &.br {
    bottom: 0;
    right: 0;
  }
  &.bl {
    bottom: 0;
    left: 0;
  }
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
View Compiled

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.