Flexbox ve CSS Grid ile Modern Layout Tasarımı

Flexbox ve CSS Grid ile Modern Layout Tasarımı

Web geliştirmede sayfa düzenleri oluşturmak için en yaygın kullanılan iki CSS teknolojisi Flexbox ve CSS Grid’dir. Her ikisi de modern ve esnek düzenler oluşturmak için güçlü araçlar sunar, ancak kullanım alanları farklıdır. Bu yazıda, Flexbox ve CSS Grid’in nasıl çalıştığını, hangi durumlarda kullanılmaları gerektiğini ve örneklerle nasıl uygulanacağını inceleyeceğiz.


1. Flexbox ile Esnek Düzenler

Flexbox (Flexible Box Layout), özellikle tek boyutlu (satır veya sütun bazlı) düzenler için idealdir. Öğeleri yatay veya dikey olarak hizalamak ve aralarındaki boşlukları esnek bir şekilde yönetmek için kullanılır.

Flexbox Temel Yapısı

.container {
  display: flex; /* Flexbox etkinleştirilir */
  justify-content: center; /* Öğeleri yatayda ortalar */
  align-items: center; /* Öğeleri dikeyde ortalar */
  gap: 20px; /* Öğeler arasındaki boşluk */
}

.item {
  width: 100px;
  height: 100px;
  background-color: steelblue;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
}

Önemli Flexbox Özellikleri

  • display: flex; → Flexbox etkinleştirir.
  • justify-content → Yatay hizalamayı kontrol eder (center, space-between, space-around).
  • align-items → Dikey hizalamayı belirler (center, flex-start, flex-end).
  • flex-wrap: wrap; → Öğelerin satır atlamasına izin verir.

Flexbox Örnek Kullanımı

<div class="container">
  <div class="item">1</div>
  <div class="item">2</div>
  <div class="item">3</div>
</div>

Bu yapı, üç öğeyi yatay olarak ortalanmış şekilde ekrana yerleştirir.


2. CSS Grid ile İleri Seviye Layoutlar

CSS Grid, iki boyutlu (hem satır hem sütun bazlı) düzenler oluşturmak için kullanılır. Daha kompleks sayfa yapıları için idealdir.

CSS Grid Temel Yapısı

.grid-container {
  display: grid; /* Grid sistemini etkinleştirir */
  grid-template-columns: repeat(3, 1fr); /* 3 eşit sütun */
  grid-gap: 20px; /* Hücreler arasındaki boşluk */
}

.grid-item {
  background-color: darkorange;
  color: white;
  padding: 20px;
  text-align: center;
}

CSS Grid Örnek Kullanımı

<div class="grid-container">
  <div class="grid-item">1</div>
  <div class="grid-item">2</div>
  <div class="grid-item">3</div>
  <div class="grid-item">4</div>
  <div class="grid-item">5</div>
  <div class="grid-item">6</div>
</div>

Bu yapı, 3 sütun ve 2 satırdan oluşan bir düzen oluşturur.

Önemli CSS Grid Özellikleri

  • grid-template-columns → Sütun sayısını ve genişliklerini belirler.
  • grid-template-rows → Satır yüksekliklerini ayarlar.
  • grid-gap → Öğeler arasındaki boşluğu belirler.
  • grid-template-areas → Belirli alanları düzenlemek için kullanılır.

3. Flexbox ve Grid Karşılaştırması

Özellik Flexbox CSS Grid
Kullanım Alanı Tek boyutlu düzenler Çift boyutlu düzenler
Ana Hizalama Satır veya sütun bazlı Satır ve sütun birlikte
Esneklik Öğeleri büyütüp küçültme desteği var Hücre bazlı yapı
Öğelerin Yerleşimi Tek yönlü hizalama Kompleks düzenler
En İyi Kullanım Navigasyon çubukları, buton grupları Sayfa düzenleri, paneller

Ne zaman Flexbox kullanmalı?

  • Basit düzenler, buton grupları ve navigasyon çubukları.
  • Öğeleri yatay veya dikey olarak hizalamak için.

Ne zaman CSS Grid kullanmalı?

  • Kompleks sayfa düzenleri.
  • Kart listeleri, galeri görünümleri.

Hem Flexbox hem de CSS Grid, modern web tasarımında kritik rol oynayan teknolojilerdir. Flexbox, tek yönlü düzenler için mükemmelken, CSS Grid daha kompleks, çift boyutlu yapılar için idealdir.

Flexbox’ı bileşenlerin hizalanması için,
CSS Grid’i tam sayfa düzenleri için kullanabilirsiniz.

Bu teknikleri birlikte kullanarak daha esnek ve kullanıcı dostu tasarımlar oluşturabilirsiniz!

Yorum gönder

This site uses Akismet to reduce spam. Learn how your comment data is processed.