Generator Animasi CSS Spinner

Berikutnya

Animasi CSS spinner adalah ring yang terus berputar melalui aturan keyframes. Di sini Anda mengatur seberapa cepat ia berputar, melihat pratinjau gerakannya, dan menyalin kelas serta blok @keyframes.

Cara mengatur animasi

  1. 1

    Masukkan kecepatan

    Pada kolom Kecepatan (s), ketik jumlah detik untuk satu putaran penuh, misalnya 0,8 atau 1,2.

  2. 2

    Lihat pratinjaunya

    Ring langsung berputar sesuai kecepatan itu, sehingga Anda bisa menilai apakah geraknya terasa tenang atau mendesak.

  3. 3

    Sesuaikan ukuran dan warna

    Ubah Ukuran, Ketebalan, dan Warna agar animasinya sesuai dengan tempat ia akan digunakan.

  4. 4

    Salin CSS-nya

    Salin aturan yang dihasilkan. Baris animation dan keyframes saling melengkapi.

Cara animasi dibangun

CSS yang dihasilkan memiliki dua bagian yang bekerja berpasangan. Properti animation pada .loader memberi nama pada animasi, menetapkan durasinya, memilih fungsi waktunya, dan mengulanginya:

animation: spin 0.8s linear infinite;

Aturan @keyframes spin mendeskripsikan gerakannya sendiri. Aturan ini hanya memiliki keadaan akhir, yaitu rotasi 360 derajat. Browser mulai dari posisi normal elemen dan berinterpolasi menuju keadaan akhir tersebut:

@keyframes spin {
  to { transform: rotate(360deg); }
}

Kolom Kecepatan (s) di alat ini menjadi durasinya. Semua yang lain, termasuk linear dan infinite, tetap sama.

Memilih durasi

Detik per putaran Kesan yang dihasilkan
0,4 hingga 0,6 Cepat dan sibuk, bisa terlihat gugup
0,8 hingga 1 Stabil, pilihan yang umum
1,2 hingga 1,6 Tenang, cocok untuk spinner besar
2 atau lebih Lamban, bisa terlihat macet

Ring yang lebih besar bisa berputar sedikit lebih lambat daripada yang kecil, karena tepi lingkaran besar sudah menempuh jarak lebih jauh setiap detiknya.

Mengapa menggunakan waktu linear

Alat ini memakai linear agar ring mempertahankan kecepatan sudut yang sama di seluruh putaran. Kurva pelonggaran seperti ease-in-out membuat ring melambat dan mempercepat di setiap putaran, yang terlihat seperti patah-patah untuk loop tanpa akhir. Jika Anda tetap menginginkan efek itu, ubah kata linear di CSS yang Anda tempel.

Batasan yang perlu diingat

  • Kecepatan 0 menghasilkan animasi dengan durasi nol, sehingga ring tidak tampak berputar. Gunakan nilai di atas 0.
  • Spinner selalu berputar searah jarum jam. Untuk membalik arahnya, ubah rotasi akhir menjadi -360deg setelah Anda menyalin kodenya.
  • Geraknya adalah satu rotasi kontinu. Gerakan berdenyut, memantul, atau bertahap memerlukan keyframes tambahan yang ditulis manual.

Menjeda dan mengontrol animasi

Setelah CSS berada di halaman Anda, Anda dapat mengontrol animasinya dengan properti standar. Menetapkan animation-play-state: paused; membekukan ring di tempatnya, yang berguna untuk keadaan ketika pekerjaan sudah selesai tetapi elemen tetap terlihat. Menetapkan animation-delay: 0.2s; menunda awal animasi, sehingga spinner hanya muncul jika waktu tunggunya tidak langsung selesai. Ini adalah properti CSS biasa yang Anda tambahkan ke aturan .loader setelah menyalinnya.

Pertanyaan yang Sering Diajukan

Kurangi angka pada kolom Kecepatan (s). Nilai 0,6 berarti satu putaran penuh memakan waktu enam persepuluh detik, sehingga berputar lebih cepat daripada 1.

Fungsi itu mengulang animasi tanpa henti. Jika Anda menggantinya dengan angka, misalnya 3, ring akan berhenti setelah tiga putaran.

Bisa. Ubah namanya di dua tempat: setelah animation: pada kelas dan setelah @keyframes. Keduanya harus sama persis.

Browser dapat menganimasikan transform tanpa menghitung ulang tata letak halaman, sehingga ini cara yang ringan untuk menggerakkan elemen dan biasanya tetap halus, bahkan pada perangkat yang sederhana.

Alat Terkait

Alat ini tersedia dalam bahasa lain

Panduan dan contoh penggunaan