Skip to main content

Gradient CSS: Membuat Latar Belakang dengan Gradasi Warna

Apa Itu Gradient dalam CSS?

Gradient adalah efek transisi warna yang halus antara dua atau lebih warna. Dalam pengembangan web, gradient digunakan untuk memberikan nuansa visual yang menarik pada elemen seperti latar belakang tombol, header, kartu, dan bagian lainnya.

CSS mendukung tiga jenis gradient:

  1. Linear Gradient – transisi warna dalam garis lurus
  2. Radial Gradient – transisi dari pusat ke luar
  3. Conic Gradient – transisi mengelilingi titik pusat (mirip roda warna)

Gradient memungkinkan kita menciptakan desain modern tanpa harus menggunakan gambar, sehingga lebih ringan dan mudah disesuaikan.


1. Linear Gradient (linear-gradient())

Digunakan untuk membuat gradasi warna sepanjang garis lurus — bisa horizontal, vertikal, atau diagonal.

Sintaks Dasar:

background-image: linear-gradient(arah, warna1, warna2, ...);

Contoh:

.box {
    width: 100%;
    height: 200px;
    background-image: linear-gradient(to right, #ff9a9e, #fad0c4);
}

Arah Gradient:

  • Gunakan kata kunci: to top, to bottom, to left, to right
  • Atau gunakan sudut derajat: 45deg, 180deg, dll

Contoh:

background-image: linear-gradient(135deg, #00c9ff, #92fe9d);

2. Radial Gradient (radial-gradient())

Menampilkan gradasi warna dari satu titik ke segala arah, mirip efek cahaya dari tengah ke tepi.

Sintaks Dasar:

background-image: radial-gradient(posisi, bentuk ukuran, warna1, warna2, ...);

Contoh:

.radial {
    background-image: radial-gradient(circle, #ffe0f0, #cc99c9);
}

Anda juga bisa mengontrol posisi dan bentuk:

radial-gradient(circle at center, red, yellow);
radial-gradient(ellipse at top, blue, green);

💡 circle untuk lingkaran sempurna, ellipse untuk bentuk oval.


3. Conic Gradient (conic-gradient())

Membuat gradasi warna melingkar, sering digunakan untuk diagram, picker warna, atau efek UI kreatif.

Sintaks Dasar:

background-image: conic-gradient(from sudut at posisi, warna1 posisi, warna2 posisi, ...);

Contoh:

.conic {
    background-image: conic-gradient(#ff0000, #ffff00, #00ff00, #0000ff, #800080);
}

Atau dengan penempatan spesifik:

background-image: conic-gradient(from 90deg at 50% 50%, red 0deg, yellow 90deg, lime 180deg, blue 270deg, red 360deg);

⚠️ conic-gradient() belum didukung di semua browser lama. Pastikan ada fallback jika diperlukan.


4. Mengatur Titik Transisi Warna

Anda bisa menentukan di mana perpindahan warna terjadi:

.linear {
    background-image: linear-gradient(to right, red 0%, orange 50%, yellow 100%);
}

Contoh dengan nilai spesifik:

.radial {
    background-image: radial-gradient(#fff 10%, #000 80%);
}

5. Repeating Gradient (repeating-linear-gradient(), repeating-radial-gradient())

Untuk membuat pola gradient berulang.

Contoh:

.repeating {
    background-image: repeating-linear-gradient(
        45deg,
        red,
        red 10px,
        yellow 10px,
        yellow 20px
    );
}

Sering digunakan untuk:

  • Pola garis-garis
  • Efek tekstur
  • Background animasi sederhana

6. Menggunakan Gradient sebagai Background

Gradient bisa menjadi bagian dari properti background lengkap dengan ukuran dan repeat.

Contoh lengkap:

.gradient-box {
    width: 100%;
    height: 200px;
    background: linear-gradient(to bottom right, #00c6ff, #0072ff) no-repeat center center / cover;
    border-radius: 10px;
}

7. Contoh Praktis

a. Header dengan Linear Gradient

HTML

<header class="header-gradient">Selamat Datang</header>

CSS

.header-gradient {
    width: 100%;
    padding: 50px 20px;
    text-align: center;
    color: white;
    font-size: 2rem;
    background-image: linear-gradient(to right, #00c6ff, #0072ff);
}

b. Tombol dengan Gradient

HTML

<button class="btn-gradient">Klik Saya</button>

CSS

.btn-gradient {
    padding: 10px 20px;
    font-size: 1rem;
    color: white;
    background-image: linear-gradient(to right, #ff416c, #ff4b2b);
    border: none;
    border-radius: 5px;
    cursor: pointer;
}

c. Kartu dengan Radial Gradient

HTML

<div class="card-gradient">
    <h2>Kartu Informasi</h2>
    <p>Ini adalah contoh kartu dengan latar belakang radial gradient.</p>
</div>

CSS

.card-gradient {
    width: 300px;
    padding: 20px;
    margin: 20px auto;
    background-image: radial-gradient(circle, #ffffff, #f0f0f0);
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

8. Kombinasi Gradient dengan Efek Visual Lain

Gradient bisa dikombinasikan dengan efek lain seperti overlay dan animasi.

Contoh overlay:

.overlay {
    position: relative;
    width: 100%;
    height: 300px;
    background-image: url('bg.jpg');
    background-size: cover;
}

.overlay::after {
    content: '';
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.7));
}

9. Tips dan Trik Efektif

  • Gunakan linear-gradient() untuk latar hero, tombol, dan card.
  • Gunakan radial-gradient() untuk efek fokus atau spotlight.
  • Gunakan conic-gradient() untuk palet warna atau loading indicator.
  • Simpan gradient dalam variabel CSS jika akan digunakan ulang.
  • Tambahkan transition untuk animasi hover yang halus.
  • Uji kompatibilitas conic-gradient() di browser lama sebelum digunakan secara luas.
  • Gunakan background-size, border-radius, dan box-shadow untuk meningkatkan tampilan.

Kesimpulan

Gradient CSS adalah alat yang sangat berguna untuk menciptakan efek warna yang dinamis dan profesional hanya dengan kode CSS biasa. Dengan memahami cara menggunakan linear-gradient, radial-gradient, dan conic-gradient, Anda bisa membuat latar belakang menarik tanpa perlu menyertakan gambar eksternal.

Selanjutnya, kita akan membahas Overflow CSS, yaitu cara mengelola konten yang melebihi batas container.


💡 Tips Praktis

  • Gunakan variabel CSS untuk menyimpan gradient utama.
  • Gunakan repeating-linear-gradient untuk pola dekoratif.
  • Gabungkan gradient dengan pseudo-element untuk efek overlay.
  • Uji gradient di berbagai ukuran layar agar tetap terlihat baik.

You may like these posts

Komentar