Apa itu Tailwind CSS? — Tailwind CSS

Pernah ngerjain CSS lalu mikir berjam-jam mau kasih nama class apa? header-button-primary-large-blue? Atau scroll ribuan baris CSS cari mana yang ngubah…

Tailwind CSS adalah framework CSS yang isinya ribuan class kecil siap pakai, dan tiap class mengerjakan satu hal: p-4 memberi padding, bg-white memberi latar putih, rounded-lg membulatkan sudut. Kamu gak nulis aturan CSS sendiri, kamu menyusun class-class itu langsung di atribut class elemennya. Class kecil seperti itu disebut utility, dan cara kerja ini namanya utility-first. Bayangin makan di warteg. Kamu gak pesan "paket nomor 7" yang isinya harus dicari dulu di daftar menu, kamu tunjuk lauknya satu-satu: nasi, ayam, sayur, sambal. Isi piringnya kelihatan dari pesananmu. Class Tailwind itu lauknya, dan atribut class itu pesananmu.

🧪 Tebakan cepat: p-4 itu padding 4px? Tebak dulu, jawabannya ada di bagian "Angka di nama class".

Kartu yang sama, dua cara

Kartu putih dengan padding 16px dan sudut membulat 8px. Pakai CSS biasa:

<div class="card">Kartu Pertamaku</div>

<style>
  .card {
    padding: 16px;
    background-color: white;
    border-radius: 8px;
  }
</style>

Pakai Tailwind:

<div class="p-4 bg-white rounded-lg">Kartu Pertamaku</div>

Tampilannya sama persis. Bedanya ada di cara nulis:

Satu class, satu aturan CSS

Tailwind bukan sulap. Tiap class jadi satu aturan CSS biasa, yang ditulis Tailwind buatmu:

Class CSS yang dibuat Tailwind Nilainya
p-4 padding: calc(var(--spacing) * 4) 1rem = 16px
bg-white background-color: var(--color-white) #fff
rounded-lg border-radius: var(--radius-lg) 0.5rem = 8px
text-white color: var(--color-white) #fff
bg-blue-600 background-color: var(--color-blue-600) biru tua

Angka di nama class

Angka di p-4 bukan piksel. Itu jumlah langkah, dan satu langkah = 0.25rem = 4px (1rem = 16px, ukuran huruf bawaan browser).

Class Hitungannya Hasil
p-1 1 × 4px 4px
p-2 2 × 4px 8px
p-4 4 × 4px 16px
p-8 8 × 4px 32px

Jadi p-4 itu padding 16px di keempat sisi, bukan 4px. Itu jawaban tebakannya. Skala yang sama dipakai margin, lebar, tinggi dan jarak lain, dan dibahas lengkap di materi berikutnya.

Cara pasang Tailwind v4

Buat coba-coba, satu baris script di <head> sudah cukup. Playground di halaman ini sudah memasangnya buatmu:

<script src="https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4"></script>

Di project sungguhan dengan Vite, install paketnya, daftarkan plugin-nya, lalu impor Tailwind di file CSS utamamu:

npm install tailwindcss @tailwindcss/vite
// vite.config.js
import { defineConfig } from "vite"
import tailwindcss from "@tailwindcss/vite"

export default defineConfig({
  plugins: [tailwindcss()],
})
/* src/style.css */
@import "tailwindcss";

🤔 Bukannya ini sama aja dengan atribut style?

Kelihatannya mirip, tapi ada tiga beda besar:

⚠️ Jebakan yang sering ketemu

TL;DR: Tailwind CSS itu framework utility-first: ribuan class kecil, tiap class satu tugas, dipasang langsung di atribut class. p-4 bg-white rounded-lg = padding 16px, latar putih, sudut 8px, tanpa menulis CSS sendiri dan tanpa pindah file. Angka di nama class itu langkah 4px (0.25rem), jadi p-4 = 16px, bukan 4px. Tiap class jadi satu aturan CSS biasa, misalnya p-4 jadi padding: calc(var(--spacing) * 4), dan Tailwind cuma membuat CSS untuk class yang dia temukan utuh di file-mu. CSS .btn { padding: 1rem; background: #2563eb; color: white; border-radius: 0.5rem; } ditulis p-4 bg-blue-600 text-white rounded-lg. Di v4, pasangnya cukup @import "tailwindcss";, atau satu script CDN buat coba-coba.

Yang akan kamu pelajari