Main Menu

Belajar Tailwind CSS Dasar #7: Grid Layout dengan Tailwind


👍 0 ❤️ 0 💡 0 🔥 0 🙌 0 🥳 0
Belajar Tailwind CSS Dasar #7: Grid Layout dengan Tailwind

Halo teman-teman semuanya, setelah kita belajar tentang Flexbox pada artikel sebelumnya, sekarang saatnya kita mengenal sistem Grid Layout di Tailwind CSS. Grid sangat berguna untuk membuat tata letak halaman yang kompleks, seperti galeri foto, tampilan kartu produk, hingga halaman dashboard.

Dengan memanfaatkan utility class dari Tailwind, kita bisa membuat sistem grid yang fleksibel, responsif, dan mudah dibaca — tanpa perlu menulis deklarasi CSS manual.

1. Membuat Grid Dasar

Untuk memulai menggunakan grid, kita cukup menambahkan class grid ke dalam elemen kontainer. Lalu gunakan grid-cols-{n} untuk menentukan jumlah kolom.

Class Fungsi
grid Mengaktifkan sistem grid
grid-cols-1 1 kolom
grid-cols-2 2 kolom
grid-cols-3 3 kolom
grid-cols-4 4 kolom, dan seterusnya hingga 12

Contoh:

<div class="grid grid-cols-2 gap-4">
  <div class="bg-blue-100 p-4">Kolom 1</div>
  <div class="bg-blue-200 p-4">Kolom 2</div>
</div>

2. Menentukan Jarak Antar Kolom dan Baris

Untuk memberi jarak antar elemen grid, gunakan class gap-{n} untuk jarak keseluruhan, atau gap-x-{n} dan gap-y-{n} untuk mengatur secara horizontal dan vertikal.

Class Fungsi
gap-4 Jarak antar item 1rem
gap-x-6 Jarak antar kolom 1.5rem
gap-y-2 Jarak antar baris 0.5rem

Contoh:

<div class="grid grid-cols-3 gap-x-4 gap-y-2">
  <div class="bg-pink-100 p-2">1</div>
  <div class="bg-pink-200 p-2">2</div>
  <div class="bg-pink-300 p-2">3</div>
</div>

3. Mengatur Lebar Kolom Secara Otomatis

Gunakan class grid-cols-auto seperti grid-cols-auto, grid-cols-auto-fit, atau grid-cols-auto-fill (melalui grid-cols-[auto-fit,minmax(200px,_1fr)]) dengan arbitrary values untuk membuat kolom yang dinamis.

Class Fungsi
grid-cols-[auto-fit,minmax(200px,_1fr)] Kolom otomatis menyesuaikan lebar minimal 200px
grid-cols-[repeat(auto-fill,...)] Mengisi ruang dengan kolom sebanyak mungkin

Contoh:

<div class="grid [grid-template-columns:repeat(auto-fit,minmax(150px,1fr))] gap-4">
  <div class="bg-teal-100 p-4">A</div>
  <div class="bg-teal-200 p-4">B</div>
  <div class="bg-teal-300 p-4">C</div>
  <div class="bg-teal-400 p-4">D</div>
</div>

4. Menggabungkan Kolom (Grid Column Span)

Gunakan col-span-{n} untuk menggabungkan item agar melebar ke beberapa kolom.

Class Fungsi
col-span-1 Mengisi 1 kolom
col-span-2 Mengisi 2 kolom
col-span-3 Mengisi 3 kolom, dst.

Contoh:

<div class="grid grid-cols-3 gap-4">
  <div class="bg-purple-100 p-4 col-span-2">Lebar 2 Kolom</div>
  <div class="bg-purple-300 p-4">Kolom Biasa</div>
</div>

Contoh Lengkap: Galeri Grid Responsif

Berikut ini adalah contoh implementasi grid untuk galeri foto atau produk.

<!DOCTYPE html>
<html lang="id">
<head>
  <meta charset="UTF-8">
  <title>Grid Gallery</title>
  <script src="https://cdn.tailwindcss.com"></script>
</head>
<body class="bg-gray-100 p-6">
  <div class="max-w-4xl mx-auto">
    <h2 class="text-2xl font-bold text-gray-800 mb-4">Galeri Grid</h2>
    <div class="grid grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-4">
      <div class="bg-white p-4 rounded shadow">Item 1</div>
      <div class="bg-white p-4 rounded shadow">Item 2</div>
      <div class="bg-white p-4 rounded shadow">Item 3</div>
      <div class="bg-white p-4 rounded shadow">Item 4</div>
      <div class="bg-white p-4 rounded shadow">Item 5</div>
      <div class="bg-white p-4 rounded shadow">Item 6</div>
    </div>
  </div>
</body>
</html>

Kesimpulan

Dengan Tailwind CSS, membuat layout grid menjadi sangat mudah dan efisien. Kita bisa menentukan jumlah kolom, jarak antar elemen, dan ukuran responsif hanya dengan beberapa utility class.

Sistem grid ini cocok digunakan untuk menampilkan konten dalam bentuk kartu, galeri, tabel, dan elemen visual lainnya secara rapi dan responsif.

Pada artikel berikutnya, kita akan membahas bagaimana menggunakan responsive design di Tailwind — yaitu bagaimana membuat tampilan kita tetap nyaman di berbagai ukuran layar.

Terima Kasih


Fika Ridaul Maulayya
Full-Stack Developer, Content Creator and CO-Founder SantriKoding.com

Suka dengan tulisan di SantriKoding? Kamu bisa memberikan dukungan dengan berdonasi atau bagikan konten ini di sosial media. Terima kasih atas dukungan Anda!

KEBIJAKAN KOMENTAR

Saat memberikan komenatar silahkan memberikan informasi lengkap tentang error, seperti: screenshot, link kode, dll. Baca aturan komentar kami