Warna adalah salah satu aspek paling fundamental dalam desain web. CSS menyediakan berbagai format untuk mendefinisikan warna — masing-masing punya kelebihan dan konteks penggunaan yang berbeda.
Dua property utama untuk mengatur warna:
p {
color: red; /* warna TEKS */
background-color: white; /* warna LATAR BELAKANG */
}
CSS mendukung 140+ nama warna standar yang bisa langsung dipakai:
h1 { color: red; }
p { color: steelblue; }
div { background-color: lightgray; }
a { color: royalblue; }
Mudah dibaca, tapi terbatas — tidak semua warna punya nama.
Format paling umum digunakan dalam desain web. Ditulis dengan tanda # diikuti 6 digit heksadesimal:
h1 { color: #ff0000; } /* merah */
p { color: #3b82f6; } /* biru */
div { background: #1f2937; } /* abu gelap */
Struktur: #RRGGBB — RR (merah), GG (hijau), BB (biru) masing-masing 00–ff.
Jika pasangan karakter sama, bisa dipersingkat menjadi 3 digit:
#ffffff → #fff /* putih */
#000000 → #000 /* hitam */
#ff0000 → #f00 /* merah */
#3399cc → #39c
Menyatakan warna dengan nilai merah, hijau, biru — masing-masing antara 0–255:
color: rgb(255, 0, 0); /* merah murni */
color: rgb(59, 130, 246); /* biru */
color: rgb(31, 41, 55); /* abu gelap */
color: rgb(0, 0, 0); /* hitam */
color: rgb(255, 255, 255); /* putih */
Sama seperti RGB, ditambah parameter keempat alpha untuk transparansi (0 = transparan penuh, 1 = tidak transparan):
background-color: rgba(0, 0, 0, 0.5); /* hitam 50% transparan */
background-color: rgba(59, 130, 246, 0.2); /* biru sangat transparan */
border-color: rgba(255, 255, 255, 0.8); /* putih hampir penuh */
Sangat berguna untuk overlay, bayangan, dan efek transparan:
.overlay {
background: rgba(0, 0, 0, 0.6); /* overlay gelap di atas gambar */
}
Format yang lebih intuitif untuk memahami dan mengubah warna:
color: hsl(0, 100%, 50%); /* merah */
color: hsl(217, 91%, 60%); /* biru */
color: hsl(142, 71%, 45%); /* hijau */
color: hsl(0, 0%, 50%); /* abu-abu */
Kelebihan HSL: mudah membuat variasi gelap-terang dari warna yang sama:
.warna-dasar { color: hsl(217, 91%, 60%); }
.warna-gelap { color: hsl(217, 91%, 40%); } /* lebih gelap */
.warna-terang { color: hsl(217, 91%, 80%); } /* lebih terang */
background: hsla(217, 91%, 60%, 0.3); /* biru transparan */
Cara modern untuk mengelola warna secara konsisten di seluruh proyek:
:root {
--warna-primer: #3b82f6;
--warna-sekunder: #8b5cf6;
--warna-teks: #1f2937;
--warna-latar: #f9fafb;
}
h1 { color: var(--warna-primer); }
p { color: var(--warna-teks); }
body { background-color: var(--warna-latar); }
.tombol { background: var(--warna-primer); }
Jika ingin mengganti warna tema, cukup ubah satu tempat di :root — semua elemen yang menggunakannya otomatis berubah.
| Format | Contoh | Kelebihan |
|---|---|---|
| Nama | red |
Mudah dibaca |
| HEX | #ff0000 |
Paling umum, singkat |
| RGB | rgb(255, 0, 0) |
Mudah dipahami nilainya |
| RGBA | rgba(0,0,0,0.5) |
Mendukung transparansi |
| HSL | hsl(0, 100%, 50%) |
Intuitif untuk variasi warna |
| HSLA | hsla(0,100%,50%,0.5) |
HSL + transparansi |
💡 Tips: Gunakan HEX untuk warna solid, RGBA untuk warna transparan, dan CSS variables untuk tema warna yang konsisten di seluruh proyek. Tools seperti coolors.co sangat membantu untuk memilih palet warna yang serasi. 🎨
Kursus
CSS Dasar
Kategori
Warna & Tipografi
Durasi Pelajaran
20 menit