Membuat Animasi Website Loaders Menggunakan CSS

3 Februari 2022
Membuat Animasi Website Loaders Menggunakan CSS

Sharing Teknologi – Membuat Animasi  Website Loaders Menggunakan CSS Di WordPress. Apakah Sobat teknologi[dot]visitklaten[dot]com ingin Membuat Animasi  Website Loaders Di WordPress dengan hanya bermodal CSS dan sedikit tambahan Javascript.

Membuat Animasi Website Loaders Menggunakan CSS

Yap.. Maka salah satu metode ini patut dicoba untuk diterapkan dalam blog ataupun website yang dimiliki terutama CMS WordPress.  Style ini bisa dimanfaatkan untuk preload halaman website, lazyload image atau lainnya.

Dengan hanya bermodal HTML dan style CSS bisa membuat website lebih menarik. Selain itu untuk membuatnya juga cukup mudah.

Sebelumnya kami mengucapkan banyak terima kasih kepada para pengunjung teknologi[dot]visitklaten[dot]com yang rela meluangkan waktu untuk mengunjungi ataupun sekedar melihat-lihat web kami yang masih banyak kekurangan ini. Kami menerima segala masukkan dan kritikan agar web dan diri kami menjadi lebih baik lagi..

Di kesempatan kali ini, kami akan berbagi tutorial Membuat Animasi Website Loading Di WordPress Menggunakan CSS. 

Berikut Panduan Membuat Animasi  Website Loaders Di WordPress Menggunakan CSS. 

NB: kami menggunakan tambahan CSS dari bootstrap.

Cara Membuat Animasi Website Loaders

Silakan Copas kode dibawah ini. Rekan-rekan bisa mengubahnya sesuai kebutuhan. Dalam kode dibawah ini kami menggunakan sistem shortcode yang bisa dipasang atau diletakkan di functions.php agar lebih mudah untuk dipasang dimanapun nantinya. Silakan nanti bisa disesuaikan dengan kebutuhan.

function website_loaders() {
    ob_start(); ?>
<main class="container loader-frame">
      <div> 
      <!-- first loader -->
      <h4>First Loader</h4>
      <div class="loader-1 py-5">
        <div class="dot"></div>
        <div class="dot"></div>
        <div class="dot"></div>
        <div class="dot"></div>
        <div class="dot"></div>
        <div class="dot"></div>
        <div class="dot"></div>
        <div class="dot"></div>
        <div class="dot"></div>
      </div>
      </div>
      <div class="block">  
      <!-- second loader -->
      <h4>Second Loader</h4>
      <div class="loader-2 py-5">
        <div class="line"></div>
        <div class="line"></div>
        <div class="line"></div>
        <div class="line"></div>
        <div class="line"></div>
      </div>
      </div>
      <div>  
      <!-- third loader -->
      <h4>Third Loader</h4>
      <p class="d-md-none">Silakan geser jika tertutup</p>
      <div style="overflow: auto;">  
      <div class="loader-3 py-5">
        <div class="circle"></div>
        <div class="circle"></div>
        <div class="circle"></div>
        <div class="circle"></div>
        <div class="circle"></div>
     </div>
     </div>
      </div>
</main>

<!--style CSS-->
<style>

.loader-frame .block {
    min-height: 400px;
}

.loader-frame .dot {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background-color: #a52a2a;
  margin: 1.6rem;
  opacity: 0.6;
}
.loader-frame .loader-1 {
  width: 20rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.loader-frame .dot:nth-child(1) {
  animation: animateLoader1 1.5s infinite;
}
.loader-frame .dot:nth-child(2) {
  animation: animateLoader1 1.3s infinite;
}
.loader-frame .dot:nth-child(3) {
  animation: animateLoader1 1.7s infinite;
}
.loader-frame .dot:nth-child(4) {
  animation: animateLoader1 1.1s infinite;
}
.loader-frame .dot:nth-child(5) {
  animation: animateLoader1 0.9s infinite;
}
.loader-frame .dot:nth-child(6) {
  animation: animateLoader1 0.7s infinite;
}
.loader-frame .dot:nth-child(7) {
  animation: animateLoader1 0.5s infinite;
}
.loader-frame .dot:nth-child(8) {
  animation: animateLoader1 1.3s infinite;
}
.loader-frame .dot:nth-child(9) {
  animation: animateLoader1 1.5s infinite;
}

@keyframes animateLoader1 {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.5);
    opacity: 1;
  }
  100% {
    transform: scale(1);
    opacity: 0.6;
  }
}

/* LOADER 2 */

.loader-frame .loader-2 {
  width: 25rem;
  display: flex;
  justify-content: space-evenly;
  align-items: center;
}


.loader-frame .line {
  width: 1.5rem;
  height: 5rem;
  background-color: #4169e1;
  border-radius: 1rem;
}

.loader-frame .line:nth-child(1) {
  animation: animateLoader2 0.7s 0.6s infinite;
}
.loader-frame .line:nth-child(2) {
  animation: animateLoader2 0.7s 0.3s infinite;
}
.loader-frame .line:nth-child(3) {
  animation: animateLoader2 0.7s infinite;
}
.loader-frame .line:nth-child(4) {
  animation: animateLoader2 0.7s 0.3s infinite;
}
.loader-frame .line:nth-child(5) {
  animation: animateLoader2 0.7s 0.6s infinite;
}

@keyframes animateLoader2 {
  0% {
    height: 5rem;
  }
  50% {
    height: 18rem;
  }
  100% {
    height: 5rem;
  }
}

/* LOADER 3 */

.loader-frame .loader-3 {
  width: 40rem;
  display: flex;
  justify-content: space-evenly;
  align-items: center;
}

.loader-frame .circle {
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  position: relative;
}

.loader-frame .circle:nth-child(1) {
  background-color: #90be6d;
}
.loader-frame .circle:nth-child(2) {
  background-color: #f9c74f;
}
.loader-frame .circle:nth-child(3) {
  background-color: #f8961e;
}
.loader-frame .circle:nth-child(4) {
  background-color: #f3722c;
}
.loader-frame .circle:nth-child(5) {
  background-color: #f94346;
}

.loader-frame .circle::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  border-radius: 50%;
  opacity: 0.5;
  animation: animateLoader3 2s ease-out infinite;
}

.loader-frame .circle:nth-child(1)::before {
  background-color: #90be6d;
}
.loader-frame .circle:nth-child(2)::before {
  background-color: #f9c74f;
  animation-delay: 0.2s;
}
.loader-frame .circle:nth-child(3)::before {
  background-color: #f8961e;
  animation-delay: 0.4s;
}
.loader-frame .circle:nth-child(4)::before {
  background-color: #f3722c;
  animation-delay: 0.6s;
}
.loader-frame .circle:nth-child(5)::before {
  background-color: #f94346;
  animation-delay: 0.8s;
}

@keyframes animateLoader3 {
  0% {
    transform: scale(1);
  }

  50%,
  75% {
    transform: scale(2.5);
  }

  80%,
  100% {
    opacity: 0;
  }
}

</style>
    <?php return ob_get_clean();
}
add_shortcode('websiteloaders', 'website_loaders');

 

Kemudian masukkan shortcode dibawah ini di tempat yang diinginkan. Jika berupa halaman atau post bisa langsung dicopas.

[*websiteloaders*] //hilangkan tanda bintang

 

Namun jika berupa tag HTML atau php maka bisa menggunakan dibawah ini

<?php echo do_shortcode('[*websiteloaders*]') ;?> //hilangkan tanda bintang

 

Tampilannya kurang lebih bisa dilihat dibawah ini. 

First Loader

Second Loader

Third Loader

Silakan geser jika tertutup

 

Terima kasih telah mengunjungi website kami.

Share jika bermanfaat, jika ada kritik, tambahan, pertanyaan atau saran silakan hubungi kami atau silakan isi di kolom komentar.

Referensi :
codepen.io/mizandhre/pen/NWaYejx
People vector created by pch.vector - www.freepik.com

Postingan Terkait

Komentar

Leave a Comment

Your email address will not be published. Required fields are marked *

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

The reCAPTCHA verification period has expired. Please reload the page.

Scroll to Top