Nasıl kullanılır?
- Sütunlar (parça boyutları) ve Satırlar (parça boyutları) alanlarını yazın. İki sütun için 200px 1fr, sabit bir kenar çubuğu ile esnek bir ana alan verir.
- Sütun aralığı (px) ve Satır aralığı (px) değerlerini belirleyin ve kapsayıcıya bir Sınıf adı verin.
- Boyanacak alan adı alanına bir ad yazın, Boya seçili kalsın ve o alana ait hücrelere tıklayın. Hücreleri temizlemek için Sil seçin.
- CSS kutusunu kopyalayın ya da kuralları stil dosyanıza yapıştırmadan önce Önizleme bölümüne bakın.
Parça boyutları ve repeat()
Her parça ızgaradaki bir boyuttur: px ya da yüzde cinsinden bir uzunluk, kalan alanı sayısıyla orantılı paylaşan esnek bir fr boyutu, auto, min-content ya da max-content. minmax(en küçük, en büyük) bir parçaya aralık verir. CSS Grid Layout belirtimi her birinin nasıl boyutlandığını açıklar.
repeat(3, 1fr) aynı parçayı üç kez yazar. repeat(auto-fill, minmax(200px, 1fr)) kutunun genişliğine sığan kadar parça üretir. Bu sayı kutuya bağlı olduğundan auto-fill ya da auto-fit içindeki her parçanın sabit boyutu olmalıdır ve araç bunun üzerine adlı alan çizemez.
grid-template-columns: 200px 1fr; grid-template-rows: auto 1fr auto; gap: satır-aralığı sütun-aralığı;
Adlı alanlar
grid-template-areas özelliği ızgaranın her satırı için bir dize alır. Bir dizideki adlar o satırın hücreleridir; nokta işareti hiçbir alana ait olmayan bir hücreyi gösterir. Her ad tek bir dikdörtgeni doldurmalıdır, çünkü tarayıcı bir adı L biçiminde ya da iki ayrı blokta yerleştiremez.
Adları kapsayıcı ızgaraya yerleştirir; her alt öğe ise grid-area ile yerini alır. Araç her ad için bir kural yazar, böylece o sınıfa sahip öğe kendi hücrelerini doldurur.
- Her parça satırı için bir ad satırı kullanın ve her satırda aynı sayıda ad bulunsun.
- Adları sayfanın bir bölümünü anlatacak biçimde seçin, örneğin header, sidebar ya da main; kurallar bu adlarla sınıf olarak yazılır.
Örnek: üstbilgi, kenar çubuğu, içerik ve altbilgisi olan bir sayfa
Varsayılan düzen iki sütun, 200px ve esnek 1fr, üç satır ise üstbilgi için auto, orta bölüm için 1fr ve altbilgi için auto içerir. Her iki yönde boşluk 16 px'tir. Üstbilgi iki sütunu da kaplayan bir alan olarak boyanır, kenar çubuğu ile ana içerik orta satırı paylaşır ve altbilgi en altta iki sütunu da kaplar.
CSS, .layout { display: grid; grid-template-columns: 200px 1fr; grid-template-rows: auto 1fr auto; gap: 16px; } ile başlar; ardından üç satırlık grid-template-areas gelir: "header header", "sidebar main" ve "footer footer". Her adın grid-area içeren kendi kuralı vardır; bu yüzden header öğesi ilk satırı doldurur.
Sık sorulan sorular
fr ile auto arasındaki fark nedir?
fr parçası, sabit parçalardan sonra kalan alanı sayısıyla orantılı paylaşır; böylece 1fr 2fr ikinci parçayı birincinin iki katı genişlikte yapar. auto parçası içeriğinin gerektirdiği kadar geniş olur ve artan alanı paylaşır.
auto-fill parçaların üzerine neden alan çizemem?
auto-fill ve auto-fit parça sayısını kutunun genişliğinden belirler; bu yüzden düzenlerken hücre sayısı bilinmez. Adlı alanlar sabit bir sayı gerektirir; bu nedenle alanlar boyanırken araç auto-fill ya da auto-fit'i kaldırmanızı ister.
Her alanın neden kendi kuralı var?
grid-template-areas adları ızgaraya yerleştirir, ancak her öğenin hangi hücreyi dolduracağını yine de belirtmesi gerekir; bunu grid-area yapar. Araç her ad için aynı adlı bir sınıfla bir kural yazar.
Boyamadığım hücrelere ne olur?
Hiçbir alana ait olmayan hücre grid-template-areas içinde nokta olarak yazılır. Adlı alanlar o hücreye bir şey yerleştirmez; başka bir yolla bir öğe koymadıkça hücre boş kalır.
Hangi tarayıcılar CSS grid destekler?
CSS grid tüm güncel büyük tarayıcılarda desteklenir. Ziyaretçileriniz eski sürümleri kullanıyorsa adlı alanlara güvenmeden önce düzeni o sürümlerde deneyin.
Düzenim bir yere gönderiliyor ya da saklanıyor mu?
Hayır. Izgara, önizleme ve CSS tarayıcınızda hazırlanır. Hiçbir şey saklanmaz ya da sunucumuza gönderilmez; bu yüzden sayfadan ayrılmadan önce CSS'i kopyalayın.
Kaynaklar
- W3C: CSS Grid Layout Module Level 1 (İngilizce)
- W3C: CSS Grid Layout Level 1, grid-template-areas (İngilizce)
- W3C: CSS Gaps Module Level 1, gap kısayolu (İngilizce)
- MDN: grid-template-areas (İngilizce)
Rakamlar ve metin en son 10 Kasım 2026 Salı tarihinde kontrol edildi.