Flexbox vs Grid: Kapan Memakai Masing-Masing?

Web Development·1 mnt baca
Sampul artikel perbandingan Flexbox dan CSS Grid
Daftar Isi
  1. Flexbox untuk satu alur
  2. Grid untuk susunan dua dimensi
  3. Kombinasikan tanpa ragu

Flexbox dan Grid sama-sama bisa menyusun elemen, tetapi cara berpikirnya berbeda. Flexbox mengatur item di satu arah utama: baris atau kolom. Grid mengatur hubungan baris dan kolom sekaligus. Keduanya sering dipakai bersama pada halaman yang sama.

Flexbox untuk satu alur

Navigasi adalah contoh yang cocok: logo di kiri, tautan di kanan, dan jarak antartautan konsisten.

.site-nav {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.site-nav__links {
  display: flex;
  gap: 1rem;
  margin-left: auto;
}

Dengan margin-left: auto, kelompok tautan terdorong ke ujung tanpa perlu menentukan lebar logo. Jika ruang menyempit, kamu bisa membungkus item dengan flex-wrap: wrap atau mengganti susunannya lewat media query.

Grid untuk susunan dua dimensi

Daftar kartu biasanya membutuhkan kolom yang sejajar dan dapat menyesuaikan lebar layar. Grid mengerjakannya dengan singkat:

.card-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr));
  gap: 1.5rem;
}

auto-fit menambah atau mengurangi jumlah kolom sesuai ruang yang tersedia. minmax menjaga kartu tidak terlalu sempit, sedangkan 1fr membagi sisa ruang secara rata. min(100%, 16rem) membantu menghindari luapan di layar kecil.

Grid juga tepat untuk halaman dengan area yang jelas:

.article-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 16rem;
  gap: 2rem;
}

@media (max-width: 48rem) {
  .article-layout { grid-template-columns: 1fr; }
}

Di desktop, artikel dan sidebar berdampingan. Di layar kecil, keduanya menjadi satu kolom.

Kombinasikan tanpa ragu

Gunakan Grid untuk kerangka halaman, lalu Flexbox di dalam header kartu atau baris tombol. Tidak ada aturan bahwa satu halaman harus memilih salah satu. Yang penting adalah hubungan antaritem: satu alur atau baris dan kolom yang saling terkait.

Saat hasilnya berantakan, aktifkan overlay Flexbox atau Grid di DevTools. Lihat dulu ukuran kontainer, gap, dan batas minimum elemen sebelum menambah banyak aturan khusus.

Ingin mencoba contoh langsung? Materi layout di kursus CSS memberi tempat untuk bereksperimen dengan keduanya.

Ditulis olehZakki Haris

Menulis materi pemrograman dan artikel teknis di ScriptCrumbs.

Baca Juga

Sampul artikel HTML Semantik dan Aksesibilitas
Web Development

HTML Semantik: Fondasi Website yang Mudah Diakses

Pelajari kapan memakai header, main, nav, article, dan button agar struktur halaman jelas bagi pembaca, pembaca layar, dan mesin pencari.

·2 mnt baca
Sampul artikel JavaScript DOM dari Nol
Pemrograman

JavaScript DOM dari Nol: Bikin Halaman Interaktif

Kenali DOM lewat contoh tombol penghitung sederhana. Pelajari memilih elemen, menangani klik, memperbarui teks, dan menghindari kesalahan umum.

·1 mnt baca
Sampul artikel alur Git untuk pemula
Developer Tools

Git untuk Pemula: Alur Commit, Branch, dan Merge

Pelajari alur Git harian dari git status sampai merge. Contoh perintah sederhana membantu kamu menyimpan perubahan dan bekerja di branch dengan aman.

·2 mnt baca