Tailwind Config & Kustomisasi — Tailwind CSS

tailwind.config.js adalah pusat kustomisasi Tailwind — tempat menambahkan warna, font, spacing, dan lainnya. Struktur dasar: module.exports = { content…

Tailwind punya tema bawaan: palet warna, font, ukuran teks, dan breakpoint. Kamu bisa menambah isinya sendiri, misalnya warna brand, lalu langsung dapat class seperti bg-brand. Di Tailwind v4, tempatnya di file CSS, di dalam blok @theme. Bayangin kartu warna di toko cat. Kartu standarnya sudah lengkap, tapi kamu bisa minta toko meracik warna khusus dan memberinya nama, misalnya "oranye kantor". Sejak itu, cukup sebut namanya tiap kali beli.

🧪 Tebakan cepat: kamu menambah --color-brand: #f97316; di @theme. Setelah itu, bg-blue-500 masih jalan gak? Tebak dulu, jawabannya ada di bagian "Menambah atau mengganti".

@theme: daftarkan sekali, dapat class-nya

@import "tailwindcss";

@theme {
  --color-brand: #f97316;
  --font-heading: Georgia, serif;
}
<div class="p-6 rounded-xl bg-brand">
  <h2 class="font-heading text-xl font-bold text-white">Custom Card</h2>
</div>
Awalan token Contoh token Class yang lahir
--color- --color-brand: #f97316 bg-brand, text-brand, border-brand
--font- --font-heading: Georgia, serif font-heading
--radius- --radius-card: 20px rounded-card
--breakpoint- --breakpoint-3xl: 90rem prefix 3xl: (mulai 1440px)

Semua token juga jadi variabel CSS biasa, jadi di CSS-mu sendiri kamu bisa menulis color: var(--color-brand). Di Playground, yang memuat Tailwind lewat CDN, tulis @theme di dalam <style type="text/tailwindcss">.

Menambah atau mengganti

@theme menambah ke tema bawaan. Setelah --color-brand didaftarkan, semua warna bawaan tetap ada. Itu jawaban tebakannya: bg-blue-500 masih jalan.

Mau membuang seluruh palet bawaan dan cuma pakai warnamu? Tulis --color-*: initial; dulu:

@theme {
  --color-*: initial;
  --color-brand: #f97316;
}

Sekarang yang tersisa cuma brand. bg-blue-500, bg-slate-800, bahkan text-white gak menghasilkan CSS lagi. Class kurung siku seperti bg-[#1e293b] tetap jalan, karena gak memakai token.

Proyek lama: tailwind.config.js

Di Tailwind v3, dan di banyak proyek yang sudah ada, pengaturan ini ditulis di file JavaScript bernama tailwind.config.js (atau tailwind.config.ts):

// tailwind.config.js (Tailwind v3)
module.exports = {
  content: ["./src/**/*.{html,js}"],
  theme: {
    extend: {
      colors: {
        brand: "#3B82F6",
      },
    },
  },
}

Nilai sekali pakai: kurung siku

Ini kartu latihan, ditulis dengan kurung siku:

<div id="card" class="p-6 rounded-xl shadow-lg bg-[#1e293b]">
  <h2 id="title" class="text-xl font-bold text-white">Custom Card</h2>
  <p id="desc" class="mt-2 text-[#94a3b8]">Dengan warna kustom</p>
</div>
Class CSS yang dihasilkan Artinya
p-6 padding: 1.5rem; jarak dalam 24px
rounded-xl border-radius: 0.75rem; sudut 12px
shadow-lg box-shadow: 0 10px 15px ...; bayangan besar
bg-[#1e293b] background-color: #1e293b; biru gelap pilihanmu
text-xl font-size: 1.25rem; teks 20px
font-bold font-weight: 700; tebal
mt-2 margin-top: 0.5rem; jarak atas 8px
text-[#94a3b8] color: #94a3b8; abu-abu kebiruan

Kurung siku cocok untuk nilai yang dipakai sekali. Kalau #1e293b dipakai di banyak kartu, jadikan token. Itu yang kamu lakukan di latihan: --color-kartu: #1e293b; dan --color-redup: #94a3b8; di @theme, lalu bg-kartu dan text-redup. Editor latihan memuat Tailwind v4 lewat CDN, sama seperti Playground, jadi @theme-nya ditulis di dalam <style type="text/tailwindcss">.

⚠️ Jebakan yang sering ketemu

TL;DR: Di Tailwind v4, token tema ditulis di CSS: @import "tailwindcss"; lalu @theme { --color-brand: #f97316; }, dan class bg-brand, text-brand, border-brand langsung lahir. Awalan menentukan class-nya: --color- untuk warna, --font- untuk font, --breakpoint- untuk prefix layar. @theme menambah ke tema bawaan; --color-*: initial mengganti seluruh palet. Di proyek v3, tempatnya tailwind.config.js: theme.extend menambah, theme tanpa extend mengganti. Nilai sekali pakai cukup kurung siku, seperti bg-[#1e293b]. Di latihan: token --color-kartu dan --color-redup di @theme, dipakai sebagai bg-kartu dan text-redup, plus p-6 (24px), rounded-xl (12px), dan font-bold (700).

Yang akan kamu pelajari