Generator CSS Grid

Susun grid-template-columns, -rows, dan -areas secara visual: geser, lukis sel, dan salin CSS langsung di browser Anda.

Semuanya terjadi secara lokal di browser Anda. Tidak ada yang meninggalkan perangkat.

CSS dihasilkan

Cara kerja

Tab grid menyusun daftar track dari jumlah dan ukuran Anda: tiga kolom 1fr menjadi grid-template-columns: repeat(3, 1fr), shorthand yang meluas menjadi satu pecahan ruang kosong per kolom. auto mengukur track menurut isinya, dan nilai px tetap mencetak persis lebar itu — resep umum adalah satu track sidebar tetap ditambah satu track 1fr cair. Jika Anda ingin track yang melar dengan batas, sunting keluarannya secara manual menjadi minmax(80px, 1fr); pembuat ini sengaja tidak memasukkannya ke shorthand agar CSS yang dihasilkan tetap terbaca.

Unit fr
Satu fr adalah satu bagian dari ruang yang tersisa setelah track berukuran tetap, gap, dan padding dikurangkan — ruang kosong, bukan persentase. Bedanya penting: dengan sidebar 200px, gap 16px, dan dua kolom 1fr, tiap fr mendapat (lebar − 216px) ÷ 2. Dua track 2fr 1fr membagi sisa yang sama 2:1, dan fr tidak pernah menyebabkan peluberan seperti persentase ketika Anda lupa menghitung gap.
Aturan penamaan grid-template-areas
Setiap string berkutip adalah satu baris; tiap token adalah satu sel, dan jumlah token harus sama di semua baris. Area bernama harus membentuk persegi panjang sempurna — wilayah berbentuk L tidak valid dan, terus terang, browser membuang seluruh deklarasi grid-template-areas begitu ada nama yang melanggar aturan, jadi baris peringatan di atas bukan hiasan. Sel kosong memakai titik. Setelah dilukis, tiap item dapat mengambil area dengan nama alih-alih menghitung garis start/end.
Track implisit vs eksplisit
Anda mendeklarasikan grid eksplisit — track pada grid-template-columns dan -rows. Konten di luarnya (lebih banyak item daripada sel, atau grid area plus item tanpa penugasan) membentuk track implisit di luar templat, yang diukur grid-auto-columns/-rows dengan default auto. Karena itu demo yang tampak punya baris misteri tambahan biasanya cuma meluber dari grid eksplisit.

Pertanyaan yang sering diajukan

Grid atau flexbox — mana, kapan?

Anggap grid sebagai layout-first dan flex sebagai content-first. Jika Anda menggambar kerangka dua dimensi — kolom dan baris yang harus rapi sepanjang halaman — pakai grid, karena track sejajar di kedua sumbu. Jika Anda membagi baris tombol, chip, atau tautan yang ukurannya datang dari isinya, flex lebih ringan. Halaman nyata mencampur keduanya: grid untuk cangkang halaman, flex di dalam tiap sel.

Bisakah saya memakai subgrid dengan tata letak ini?

subgrid membuat grid bersarang meminjam track dari induknya — berguna untuk baris kartu yang label dalamnya harus sejajar. Dukungannya kini benar-benar arus utama: Firefox punya sejak 71 (2019), Safari di 16 (2022), dan Chrome di 117 (2023), jadi pada 2026 tergolong tersedia luas. Generator ini tetap di grid tingkat atas karena subgrid butuh sarang sungguhan agar bisa didemonstrasikan secara jujur.

Bagaimana dengan Internet Explorer lama?

IE 10/11 menerapkan spesifikasi berprefiks (-ms-grid) yang sama sekali berbeda dengan model auto-placement lain, dan alat ini tidak mengeluarkannya. Polyfill yang setia juga tidak mungkin. Jika wajib menyokong IE itu, jalur praktisnya adalah fallback float atau flexbox di dalam @supports (display: grid); kalau tidak, abaikan IE.

Ke mana item tanpa grid-area?

Mereka tetap auto-placement dan mengisi sel yang tidak tertutup area bernama — yang, pada templat 4×4 yang tergambar penuh, berarti browser menambahkannya sebagai baris implisit di bawah grid. Tugaskan area ke setiap item yang terlihat, atau biarkan templat kosong, agar demo ringkas tampak disengaja.

Apakah ada yang diunggah ke server?

Tidak. Pelukis, arithmetic track, dan keluaran CSS semuanya berjalan di browser Anda sebagai JavaScript dan CSS biasa. Tata letak grid Anda tidak pernah disimpan, dikirim, atau diambil, dan halaman tetap jalan tanpa jaringan.