EMZETT.
Giriş yap

CSS Grid: satırlar ve sütunlarla düzen kurmak

Kısaca: CSS Grid öğeleri iki boyutlu bir satır ve sütun ızgarasına yerleştirir; tüm sayfa düzenleri için idealdir, Flexbox ise tek tek alanlardaki satırlara veya sütunlara uygundur.

Biraz daha ayrıntılı: display: grid ile bir kapsayıcı ızgara olur. Sütunları ve satırları tanımlarsın; çocuklar hücreleri otomatik doldurur veya bilerek yerleştirilir.

Ayrıntılı

Temeller

.gallery {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}

fr, boş alanın bir kesridir. gap hücreler arasındaki boşluğu ayarlar. grid-column: 1 / 3 ile bir öğe iki sütunu kaplar; grid-template-areas adlandırılmış alanlara izin verir (“head head”, “side content”).

Medya sorgusu olmadan duyarlı

grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); sığabildiği kadar sütun oluşturur, en az 220 px genişliğinde. Telefonda bir sütun, masaüstünde dört, tek bir kesme noktası olmadan. minmax(), auto-fill/auto-fit ve aspect-ratio temel araçlardır.

Grid mi Flexbox mı?

  • Grid: iki boyutlu, dıştan düzen (önce ızgara, içerik doldurur).
  • Flexbox: tek boyutlu, içeriden düzen (boyuta içerik karar verir), örneğin gezinme çubukları.
  • İkisi birleştirilebilir: sayfa çerçevesi için Grid, hücrelerin içindeki satırlar için Flexbox.
  • Subgrid (grid-template-columns: subgrid) çocukların ebeveyn ızgarasının izlerini kullanmasını sağlar; güncel tarayıcılarda mevcuttur.

Hatalardan kaçınmak

  • Çok fazla sabit piksel değeri; fr, minmax, % tercih et.
  • Sırayı yalnızca görsel olarak yeniden düzenleme: sekme ve ekran okuyucu sırası kaynağı izler.
  • İzleri görünür kılmak için tarayıcıların geliştirici araçlarındaki ızgara araçlarını kullan.

Ayrıca bak: Flexbox, Medya sorguları ve kesme noktaları, Tailwind CSS