Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana untuk melaksanakan kesan Memuatkan mudah dengan CSS

Bagaimana untuk melaksanakan kesan Memuatkan mudah dengan CSS

PHPz
PHPzasal
2023-04-26 16:13:383407semak imbas

Pemuatan ialah fungsi yang sangat biasa dalam pembangunan bahagian hadapan. Apabila data halaman web dimuatkan, kami berharap dapat memberi pengguna maklum balas visual sambil menunggu untuk meningkatkan pengalaman pengguna. Dalam artikel ini, kami akan melaksanakan kesan Pemuatan mudah melalui CSS.

1. Gunakan animasi Animasi untuk melaksanakan Pemuatan

Animasi ialah modul baharu dalam CSS3, yang boleh digunakan untuk mencipta kesan animasi yang sangat kompleks. Di sini kami menggunakan Animasi untuk mencipta kesan Memuatkan.

Mula-mula tambah bekas untuk kesan Memuatkan dalam HTML:

<div class="loading">
  <div class="loading-circle"></div>
  <div class="loading-circle"></div>
  <div class="loading-circle"></div>
</div>

Seterusnya, tentukan animasi bingkai utama dalam CSS untuk memutarkan "bulatan".

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

Kemudian gayakan kelas .loading-circle untuk menjadikannya bulatan dan gunakan animasi yang ditakrifkan di atas di dalamnya.

.loading-circle {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #333;
  margin: 0 10px;
  animation: rotate 1.5s ease-in-out infinite;
}

Akhir sekali, gayakan bekas dalam .css-loading supaya ia berpusat pada halaman, dan laraskan kedudukan dan saiz "bulatan" dengan sewajarnya.

.loading {
  display: flex;
  justify-content: center;
  align-items: center;
}
.loading-circle:nth-child(1) {
  transform: translateY(-30px);
}
.loading-circle:nth-child(2) {
  transform: translateY(30px);
}

Kod pelaksanaan lengkap adalah seperti berikut:

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

.loading-circle {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #333;
  margin: 0 10px;
  animation: rotate 1.5s ease-in-out infinite;
}

.loading {
  display: flex;
  justify-content: center;
  align-items: center;
}
.loading-circle:nth-child(1) {
  transform: translateY(-30px);
}
.loading-circle:nth-child(2) {
  transform: translateY(30px);
}

2 Gunakan Peralihan untuk melaksanakan Pemuatan

Selain Animasi, kami juga boleh menggunakan Peralihan dalam. CSS Untuk mencapai kesan Memuatkan.

Kami juga menambah bekas dalam HTML sebagai kawasan paparan Memuatkan:

<div class="loading-2">
  <div class="loading-circle-2"></div>
  <div class="loading-circle-2"></div>
  <div class="loading-circle-2"></div>
</div>

Dalam CSS, kami mentakrifkan keadaan awal dan keadaan akhir untuk .loading-circle-2 kelas, Dan gunakan Peralihan untuk mencapai peralihan yang lancar antara negeri.

.loading-circle-2 {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #333;
  margin: 0 10px;
  transform: scale(0);
  transition: transform 0.5s ease 0.2s;
}

.loading-2 .loading-circle-2:nth-child(1) {
  animation: delay 0.2s linear infinite;
}
.loading-2 .loading-circle-2:nth-child(2) {
  animation: delay 0.3s linear infinite;
}
.loading-2 .loading-circle-2:nth-child(3) {
  animation: delay 0.4s linear infinite;
}

@keyframes delay {
  0%, 80%, 100% {
    transform: scale(0);
  }
  40% {
    transform: scale(1);
  }
}

Akhir sekali, kami menetapkan gaya pada elemen .loading-2 supaya ia berpusat pada halaman.

Kod pelaksanaan lengkap adalah seperti berikut:

.loading-circle-2 {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #333;
  margin: 0 10px;
  transform: scale(0);
  transition: transform 0.5s ease 0.2s;
}

.loading-2 .loading-circle-2:nth-child(1) {
  animation: delay 0.2s linear infinite;
}
.loading-2 .loading-circle-2:nth-child(2) {
  animation: delay 0.3s linear infinite;
}
.loading-2 .loading-circle-2:nth-child(3) {
  animation: delay 0.4s linear infinite;
}

@keyframes delay {
  0%, 80%, 100% {
    transform: scale(0);
  }
  40% {
    transform: scale(1);
  }
}

.loading-2 {
  display: flex;
  justify-content: center;
  align-items: center;
}

3. Ringkasan

Artikel ini menunjukkan cara menggunakan CSS untuk mencapai kesan Pemuatan melalui dua kaedah berbeza. Walaupun Animasi agak kompleks, ia boleh mencipta kesan animasi yang sangat kaya dan pelbagai. Peralihan adalah lebih ringkas dan mudah difahami, dan boleh mencapai beberapa animasi mudah.

Secara umum, menggunakan CSS untuk melaksanakan Pemuatan ialah cara yang agak mudah, yang boleh meningkatkan pengalaman pengguna dengan berkesan. Sudah tentu, dalam pembangunan sebenar, kami juga mungkin perlu membuat beberapa pelarasan dan pengoptimuman gaya berdasarkan keperluan sebenar projek.

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan kesan Memuatkan mudah dengan CSS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn