K

Command Palette

Search for a command to run...

Daftar

Warna, Background, & Gradient CSS

Pelajari cara mengubah warna teks, warna latar belakang, menggunakan gambar sebagai background, dan menciptakan efek gradient yang menawan dengan CSS.

Warna-Warni Dunia CSS: Dari Warna Solid, Gambar Background, Sampe Gradient Kece!

Udah jago milih elemen HTML pake berbagai macem selector? Mantap! Sekarang, saatnya kita kasih "nyawa" visual ke elemen-elemen itu. Salah satu cara paling dasar dan paling sering dilakuin adalah dengan mainin warna dan background.

CSS ngasih kita banyak banget properti buat ngatur aspek ini, dari sekadar ganti warna teks, ngasih warna latar belakang, masang gambar sebagai background, sampe bikin efek gradasi warna (gradient) yang bikin tampilan makin artistik!

Ganti Warna Teks Pake Properti color

Properti CSS yang paling dasar buat ngubah warna teks di dalem sebuah elemen adalah color.

  • Sintaks: color: nilai-warna;

  • Nilai Warna: Ada beberapa cara buat nentuin nilai warna di CSS:

    1. Nama Warna (Named Colors): CSS punya daftar nama-nama warna standar yang bisa langsung kamu pake (dalam bahasa Inggris). Misalnya: red, blue, green, yellow, black, white, purple, orange, pink, gray, lightgray, darkblue, lightcoral, dll. Ada sekitar 140+ nama warna standar.

      css
      h1 {
          color: navy; /* Teks h1 jadi biru tua */
      }
      .peringatan {
          color: red;  /* Teks dengan class "peringatan" jadi merah */
      }
    2. Kode HEX (Hexadecimal Colors): Ini cara yang paling umum dipake sama desainer dan developer. Kode HEX diawali tanda pagar (#) diikuti 6 digit heksadesimal (0-9 dan A-F). Dua digit pertama buat intensitas Merah (Red), dua berikutnya buat Hijau (Green), dan dua terakhir buat Biru (Blue) – disingkat RRGGBB.

      • #000000 itu hitam, #FFFFFF itu putih.
      • #FF0000 itu merah murni, #00FF00 itu hijau murni, #0000FF itu biru murni.
      • Bisa juga disingkat jadi 3 digit kalau tiap pasangannya sama (misal, #F00 sama aja kayak #FF0000).
      css
      p {
          color: #333333; /* Abu-abu tua */
      }
      a {
          color: #007BFF; /* Biru cerah */
      }
    3. RGB / RGBA (Red, Green, Blue, Alpha):

      • RGB: Nentuin warna pake kombinasi intensitas Merah, Hijau, dan Biru, masing-masing nilainya dari 0 sampe 255.
        • Sintaks: rgb(merah, hijau, biru)
        • Contoh: rgb(255, 0, 0) (merah), rgb(0, 0, 0) (hitam).
      • RGBA: Sama kayak RGB, tapi ada tambahan komponen Alpha (A) buat ngatur tingkat transparansi/opacity. Nilai Alpha dari 0.0 (transparan total) sampe 1.0 (opak/gak transparan).
        • Sintaks: rgba(merah, hijau, biru, alpha)
        • Contoh: rgba(0, 0, 255, 0.5) (biru dengan transparansi 50%).
      css
      .info-box {
          color: rgb(50, 150, 50); /* Hijau agak gelap */
      }
      .overlay-text {
          color: rgba(255, 255, 255, 0.8); /* Putih dengan transparansi 80% */
      }
    4. HSL / HSLA (Hue, Saturation, Lightness, Alpha):

      • Ini cara lain nentuin warna yang kadang lebih intuitif buat sebagian orang.
      • Hue (H): Posisi warna di spektrum lingkaran warna (0-360 derajat; 0/360 merah, 120 hijau, 240 biru).
      • Saturation (S): Intensitas atau kemurnian warna (0% abu-abu, 100% warna penuh).
      • Lightness (L): Tingkat kecerahan warna (0% hitam, 50% warna normal, 100% putih).
      • Alpha (A): Sama kayak di RGBA, buat transparansi (0.0 - 1.0).
      • Sintaks: hsl(hue, saturation, lightness) atau hsla(hue, saturation, lightness, alpha)
      css
      button {
          color: hsl(240, 100%, 50%); /* Biru murni, saturasi penuh, kecerahan normal */
      }
      .catatan-kaki {
          color: hsla(0, 0%, 0%, 0.6); /* Hitam (hue & sat gak ngaruh kalau lightness 0%) dengan transparansi 60% -> jadi abu-abu transparan */
      }

Tips Memilih Warna: Pake color picker tool (ada di VS Code, browser DevTools, atau website khusus) buat dapetin kode HEX/RGB/HSL yang pas. Perhatiin juga kontras warna teks dan background biar gampang dibaca (penting buat aksesibilitas!).

Ngatur Background Pake Properti background-...

Selain warna teks, kita juga bisa ngatur tampilan latar belakang (background) elemen.

  1. background-color:

    • Ngasih warna solid buat latar belakang elemen. Nilainya bisa pake format warna apa aja (nama, HEX, RGB/A, HSL/A).
    css
    body {
        background-color: #EFEFEF; /* Background halaman jadi abu-abu muda */
    }
    .highlight {
        background-color: lightyellow; /* Elemen dengan class highlight punya background kuning muda */
    }
  2. background-image:

    • Nampilin gambar sebagai latar belakang elemen. Nilainya adalah url("path/ke/gambar.jpg").
    css
    .hero-section {
        background-image: url("images/banner-keren.jpg");
        height: 400px; /* Biasanya butuh tinggi biar gambarnya keliatan */
    }
  3. background-repeat:

    • Ngatur gimana gambar background diulang kalau ukurannya lebih kecil dari elemennya.
    • Nilai umum:
      • repeat (default): Ulang horizontal dan vertikal.
      • repeat-x: Ulang horizontal aja.
      • repeat-y: Ulang vertikal aja.
      • no-repeat: Gak diulang sama sekali.
    css
    body {
        background-image: url("pattern.png");
        background-repeat: repeat; /* Ulang pattern di seluruh body */
    }
    .logo-header {
        background-image: url("logo-kecil.png");
        background-repeat: no-repeat;
    }
  4. background-position:

    • Ngatur posisi awal gambar background di dalem elemen. Bisa pake keyword (top, center, bottom, left, right) atau nilai persentase/pixel.
    • Contoh: center center, top left, 50% 50%, 20px 10px.
    css
    .banner {
        background-image: url("gambar-utama.jpg");
        background-repeat: no-repeat;
        background-position: center top; /* Gambar di tengah-atas */
    }
  5. background-size:

    • Ngatur ukuran gambar background.
    • Nilai umum:
      • auto (default): Ukuran asli gambar.
      • cover: Nyesuaiin ukuran gambar biar nutupin seluruh area elemen (mungkin ada bagian gambar yang kepotong), rasio aspek terjaga.
      • contain: Nyesuaiin ukuran gambar biar seluruh gambar muat di dalem elemen (mungkin ada area kosong di elemen), rasio aspek terjaga.
      • Nilai panjang (misal, 100px 200px atau 50%).
    css
    .full-bg {
        background-image: url("pemandangan.jpg");
        background-size: cover; /* Gambar nutupin seluruh area, mungkin kepotong */
        background-position: center;
        background-repeat: no-repeat;
    }
  6. background-attachment:

    • Ngatur apakah gambar background ikut nge-scroll bareng konten halaman (scroll - default) atau tetep diem di tempatnya (fixed - efek parallax sederhana).
    css
    body {
        background-image: url("bg-subtle.png");
        background-attachment: fixed; /* Background diem pas halaman di-scroll */
    }
  7. Shorthand background:

    • Kamu bisa nulis beberapa properti background di atas jadi satu baris pake properti background. Urutannya fleksibel, tapi biasanya: background-color background-image background-repeat background-attachment background-position / background-size. (slash / dipake buat misahin background-position dan background-size kalau dua-duanya ada).
    css
    .hero {
        background: lightblue url("hero.jpg") no-repeat center center / cover;
    }

    Kalau ada properti yang gak kamu sebutin, dia bakal pake nilai default-nya.

Bikin Tampilan Makin Artistik dengan CSS Gradients

Selain warna solid atau gambar, kamu juga bisa bikin background (atau bahkan teks, dengan trik tertentu) jadi punya efek gradasi warna (gradient). Ada dua jenis gradient utama di CSS:

  1. Linear Gradient (linear-gradient()):

    • Bikin gradasi warna yang ngalir lurus dari satu titik ke titik lain.
    • Sintaks dasar: linear-gradient(arah, warna-awal, warna-tengah, ..., warna-akhir);
    • Arah:
      • Keyword: to top, to bottom (default kalau gak disebut), to left, to right.
      • Kombinasi: to top right, to bottom left.
      • Sudut: 45deg, 180deg, 0deg.
    • Warna: Bisa beberapa warna, dipisah koma. Kamu juga bisa nentuin color stops (posisi di mana warna tertentu mulai dominan) pake persentase atau panjang.
    css
    .gradasi-biru-langit {
        background-image: linear-gradient(to bottom, skyblue, dodgerblue);
        /* Dari skyblue di atas ke dodgerblue di bawah */
    }
     
    .gradasi-pelangi-diagonal {
        background-image: linear-gradient(45deg, red, orange, yellow, green, blue, indigo, violet);
    }
     
    .gradasi-dengan-stop {
        background-image: linear-gradient(to right, red 0%, yellow 50%, green 100%);
        /* Merah dari awal (0%), kuning di tengah (50%), hijau di akhir (100%) */
    }
  2. Radial Gradient (radial-gradient()):

    • Bikin gradasi warna yang nyebar dari satu titik tengah ke luar, kayak lingkaran atau elips.
    • Sintaks dasar: radial-gradient(bentuk ukuran at posisi, warna-awal, ..., warna-akhir);
    • Bentuk: circle (lingkaran) atau ellipse (elips - default).
    • Ukuran: Keyword kayak closest-side, farthest-side, closest-corner, farthest-corner, atau ukuran spesifik.
    • Posisi (at posisi): Posisi titik tengah gradasi (misal, at center, at top left, at 50% 50%). Defaultnya center.
    css
    .lingkaran-matahari {
        background-image: radial-gradient(circle, yellow, orange, red);
        /* Gradasi lingkaran dari kuning di tengah ke merah di luar */
    }
     
    .efek-cahaya {
        background-image: radial-gradient(ellipse farthest-corner at top right, white, transparent);
        /* Elips dari pojok kanan atas, putih ke transparan */
    }

Gradient ini bisa dipake di properti background-image. Kamu bisa bikin efek yang keren banget dengan ngombinasiin arah, warna, dan color stops.


Warna, background, dan gradient ini adalah alat dasar tapi super powerful buat ngasih identitas visual ke website-mu. Jangan takut buat eksperimen dengan berbagai kombinasi warna dan properti background. Pake browser DevTools buat nyoba-nyoba nilai secara live, itu cara belajar yang efektif banget!

Selanjutnya, kita bakal ngulik soal tipografi di CSS: gimana cara ngatur font biar teksmu makin enak dibaca dan sesuai sama desain.


Kuis Warna, Background, & Gradient CSS

Pertanyaan 1 dari 5

Properti CSS apa yang digunakan untuk mengubah warna teks dari sebuah elemen?