Mehmet

WFN Üye
Konular
1,851
Mesajlar
1,852
Çözüm
0
Ticaret Puanı
0
Üyelik
1 Ay 6 Gün
Konum
YurtDışı
Web Sitesi
Var
Alanı
Google Adsense
1/1
Konu sahibi
HTML’de “float” denilen özellik aslında CSS’in float özelliğidir. Bir elementi kapsayıcısının soluna veya sağına yaslar; normal metin ve satır içi içerik, kayan elementin boşta kalan yanından akmaya devam eder. Tipik kullanım, bir görselin veya kısa not kutusunun etrafında metin dolaştırılmasıdır. float, modern sayfa kolonlarını oluşturmak için de kullanılabilir; ancak bu iş için çoğu durumda Flexbox veya Grid daha anlaşılırdır.

Float nasıl çalışır?​


float: left elementi sola, float: right elementi sağa taşır. Kayan element normal akışta kapladığı yeri aynı şekilde korumaz; sonraki içerik, yeterli yatay alan varsa onun çevresine yerleşir. Elementin genişliği belirtilmezse beklenmeyen ölçüler ve sıkışan metinler görülebilir.

Sağdan sola yazım yönünü destekleyen tasarımlarda fiziksel left ve right yerine ihtiyaca göre inline-start veya inline-end tercih edilebilir. Kayan içeriğin altına geçmek isteyen bir sonraki element için clear kullanılır.

Çalışan en küçük örnek​


Aşağıdaki dosyayı float.html adıyla kaydedip tarayıcıda açın:

Kod:
<!doctype html>
<html lang="tr">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>Float örneği</title>
  <style>
    .metin { max-width: 600px; line-height: 1.6; display: flow-root; }
    .not {
      float: left; width: 140px; max-width: 40%;
      box-sizing: border-box; margin: 0 16px 8px 0;
      padding: 8px; border: 1px solid #666; border-radius: 4px;
    }
    .temizle { clear: both; }
  </style>
</head>
<body>
  <article class="metin">
    <aside class="not" aria-label="Kısa not">Float, yanındaki metnin akışını etkiler.</aside>
    <p>Bu paragraf, sola kayan not kutusunun sağındaki boşluğa yerleşir. Metin yeterince uzunsa kutunun altına ulaştığında yeniden satırın tamamına yayılır.</p>
    <p>Genişlik değiştikçe kullanılabilir boşluk da değişir. Dar ekranlarda metin kutunun altına geçebilir.</p>
    <h2 class="temizle">Yeni bölüm</h2>
    <p>Bu bölüm kayan kutunun altında başlar.</p>
  </article>
</body>
</html>

Örnekte dışarıdan dosya gerektirmeyen bir not kutusu sola yaslanır; paragraflar uygun alan varsa yanından akar. “Yeni bölüm” başlığı clear: both sayesinde kutunun altında başlar. Başlık yanında kalıyorsa geliştirici araçlarında bu kuralın doğru öğede uygulandığını kontrol edin. Kapsayıcıdaki flow-root ise kayan çocuğu da kapsayan bir biçimlendirme bağlamı oluşturur.

Hangi durumda hangi yaklaşım?​


Aşağıdaki ayrım, float kullanıp kullanmayacağınıza karar vermeyi kolaylaştırır.
İhtiyaçUygun yaklaşımNeden
Metni görselin etrafında dolaştırmakfloatMetin kayan görselin yanından akar
Yan yana kartları hizalamakFlexbox veya GridHizalama ve responsive davranış daha nettir
Kayan içeriğin altına geçmekclearElementin float alanının altında başlamasını sağlar
Float içeren kapsayıcı yüksekliğini korumakdisplay: flow-rootKapsayıcının kayan çocuklarını kapsamasına yardımcı olur
Float kullandığınızda kapsayıcının yüksekliğini kontrol edin. Kapsayıcının yalnızca kayan çocuklardan oluşması halinde yüksekliği beklenenden küçük görünebilir. Böyle bir durumda kapsayıcıya display: flow-root vermek veya uygun bir temizleme yöntemi kullanmak sorunu giderir.

Sık yapılan hatalar​

  1. Float’ı HTML etiketi sanmak: float bir HTML etiketi değil, CSS özelliğidir.
  2. Kolon düzenini yalnızca float ile kurmak: Çok kolonlu yeni düzenlerde Flexbox veya Grid daha kolay yönetilir.
  3. Genişlik ve boşlukları hesaba katmamak: Float genişliği, kenar boşlukları ve kapsayıcı genişliği aynı satıra sığmalıdır.
  4. Her sonraki elementi clear: both yapmak: Bu, gereksiz boşluklar oluşturabilir; yalnızca gerçekten kayan alanın altına geçmesi gereken elementte kullanın.
  5. Görselin anlamını yalnız yerleşime bırakmak: İçerik görseliyse amacına uygun alt yazın; yalnız dekoratifse boş alt="" kullanın. Float erişilebilir metin alternatifinin yerine geçmez.

Sık sorulan sorular​


Float ile position: absolute arasındaki fark nedir?​


Float, metnin kayan elementin çevresinden akmasına izin verir. position: absolute ise elementi normal yerleşim akışından çıkararak belirli konumlara yerleştirir; metin genellikle onun çevresine float’taki gibi sarılmaz.

Float’ı iptal etmek için ne yazılır?​


Bir elementin float kullanmaması için float: none yazılır. Önceki kayan elementlerin altına geçmesini istiyorsanız ayrıca clear: both kullanmanız gerekir.
 

Sende şimdi bize katılmak ister misin?

Kayıt ol

Bize katılım kolay ve ücretsizdir!

Konuyu görüntüleyenler

Bu konuyu şu anda görüntüleyen üye bulunmuyor.