JSFiddle - React, Tailwind, and code Playground

by yoowordpress

HTML

<div class="wpp-preloader-wrap">
    <div class="wpp-preloader-car">
        <div class="wpp-preloader-strike"></div>
        <div class="wpp-preloader-strike wpp-preloader-strike2"></div>
        <div class="wpp-preloader-strike wpp-preloader-strike3"></div>
        <div class="wpp-preloader-strike wpp-preloader-strike4"></div>
        <div class="wpp-preloader-strike wpp-preloader-strike5"></div>
        <div class="wpp-preloader-car-detail wpp-preloader-spoiler"></div>
        <div class="wpp-preloader-car-detail wpp-preloader-back"></div>
        <div class="wpp-preloader-car-detail wpp-preloader-center"></div>
        <div class="wpp-preloader-car-detail wpp-preloader-center1"></div>
        <div class="wpp-preloader-car-detail wpp-preloader-front"></div>
        <div class="wpp-preloader-car-detail wpp-preloader-wheel"></div>
        <div class="wpp-preloader-car-detail wpp-preloader-wheel wpp-preloader-wheel2"></div>
    </div>

    <div class="wpp-preloader-text">
        <span>Loading</span><span class = "wpp-preloader-dots">...</span>
    </div>
</div>

CSS

@-ms-keyframes wpp-preloader-spin {
    from { -ms-transform: rotate(0deg); }
    to { -ms-transform: rotate(360deg); }
}
@-moz-keyframes wpp-preloader-spin {
    from { -moz-transform: rotate(0deg); }
    to { -moz-transform: rotate(360deg); }
}
@-webkit-keyframes wpp-preloader-spin {
    from { -webkit-transform: rotate(0deg); }
    to { -webkit-transform: rotate(360deg); }
}
@keyframes wpp-preloader-spin {
    from {
        transform:rotate(0deg);
    }
    to {
        transform:rotate(360deg);
    }
}

@keyframes wpp-preloader-strikes {
  from {
    left: 25px;
  }
  to {
    left: -80px;
    opacity: 0;
  }
}
@keyframes wpp-preloader-dots {
  from {
    width: 0px;
  }
  to {
    width: 15px;
  }
}
@keyframes wpp-preloader-fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.wpp-preloader-fadeIn, .wpp-preloader-loading-window {
  animation: wpp-preloader-fadeIn 0.4s both;
}

.wpp-preloader-wrap {
    background: rgb(51 51 51 / 50%);
    color: #ffffff;
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 99;
    position: fixed;
    margin: 0;
    padding: 0;
}
.wpp-preloader-text {
    font-size: 16px;
    position: absolute;
    width: auto;
    top: 50%;
    left: 50%;
    margin: 0 auto;
    margin-top: 30px;
    margin-left: -34px;
}

.wpp-preloader-dots {
  display: inline-block;
  width: 5px;
  overflow: hidden;
  vertical-align: bottom;
  animation: wpp-preloader-dots 1.5s linear infinite;
  transition: 1;
}

.wpp-preloader-car {
    position: absolute;
    width: 117px;
    height: 42px;
    left: 50%;
    top: 50%;
    margin-left: -59px;
    margin-top: -21px;
    border-bottom:2px solid #fff;
    padding-bottom:4px;
}

.wpp-preloader-strike {
  position: absolute;
  width: 11px;
  height: 1px;
  background: #ffffff;
  animation: wpp-preloader-strikes 0.2s linear infinite;
}
.wpp-preloader-strike2 {
  top: 11px;
  animation-delay: 0.05s;
}
.wpp-preloader-strike3 {
  top: 22px;
  animation-delay:...