🎨

Frontend Fundamentals

Kursus Gratis — Fullstack Talent

12

Website yang Hidup: Animasi & Transisi

📖 10 menit baca 🏷️ Menengah

Sebuah antarmuka pengguna (UI) yang baik tidak hanya diam membatu. Ia harus merespon interaksi pengguna dengan mulus, memberikan umpan balik visual bahwa sistem sedang bekerja.

Tailwind CSS menyertakan dua sistem pergerakan: Transisi (pergerakan halus saat state berubah seperti saat di-*hover*) dan Animasi Keyframe (pergerakan looping berkelanjutan seperti loading spinner).

🌊 1. Transisi Halus (Smooth Transitions)

Jika kamu merubah warna tombol saat di-hover: tanpa transisi, warnanya akan berubah secara kasar/instan. Untuk membuatnya memudar dengan mulus, tambahkan ketiga serangkai ini: transition-all, duration-300 (waktu 300ms), dan ease-in-out (kurva percepatan).

Tanpa Transisi (Kasar)

// Tidak ada class transition
hover:bg-red-500 hover:scale-125

Pakai Transisi (Mulus) ✨

transition-all duration-500 ease-in-out
hover:bg-emerald-500 hover:scale-125

✨ 2. Empat Animasi Bawaan Tailwind

Tailwind CSS secara ajaib menyediakan 4 animasi keyframe siap pakai yang dirancang untuk mengatasi 90% kebutuhan desain web modern tanpa perlu menulis CSS rumit.

animate-spin

Indikator Loading, Refresh Icon

animate-ping

Tanda Radar, Titik Notifikasi Pesan Baru

animate-pulse

Skeleton Loading (Menunggu Konten API)

animate-bounce

Anak Panah Scroll Down, Penunjuk Arah

🔔 3. Demonstrasi Visual: Tombol Notifikasi

Bagaimana mengimplementasikan animate-ping agar persis seperti radar notifikasi pesan di aplikasi sekelas Facebook / Instagram? Kamu harus menggabungkannya dengan teknik Absolute Positioning.

✉️

🎓 Kesimpulan Eksekusi

  • Ingat rumus wajib Transisi saat mendesain Hover/Focus: transition-all + duration-... + ease-...
  • Tanpa transition-all, durasi dan kurva perlambatan tidak akan berfungsi.
  • Gunakan animate-pulse (memudar kedap-kedip lambat) untuk membuat kerangka halaman (*Skeleton Layout*) sementara data belum selesai diunduh dari internet / API.