Mozaik Yerleşimi: CSS ve JS Yaklaşımları
CSS column-count ve JavaScript geri dönüş stratejilerini kullanarak Pinterest tarzı mozaik ızgaralar oluşturun.
Mozaik Yerleşimi: CSS ve JS Yaklaşımları, CoddyKit'te ücretsiz bir CSS Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, CSS Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. CSS Academy kursu toplamda 4 dersten oluşur.
Duvar Örgüsü Düzeni Nedir?
Duvar örgüsü düzeni, her öğenin bir sonraki kullanılabilir dikey alanı dolduracağı sütunlara öğeler yerleştirir; Pinterest'teki gibi. Öğelerin sütun genişlikleri eşittir, ancak yükseklikleri değişkendir. Sonuç, satırlar arasında boşa giden beyaz alan bulunmayan, yoğun ve görsel açıdan dinamik bir ızgaradır.
CSS Izgarasıyla Duvar Örgüsü (Deneysel)
Bir özellik bayrağının arkasında çalışan Chrome ve Firefox, grid-template-rows: masonry özelliğini destekler. Öğeler sütunlara yerleştirilir, ancak satırlar içerik yüksekliklerine göre boyutlandırılır; böylece değişken yükseklikteki öğeler boşluk bırakmadan yerleşebilir. Bu, gelecekteki yerel çözümdür.
<div class="grid">
<div>1</div><div>2</div><div>3</div><div>4</div>
</div>CSS Sütunları Yaklaşımı
CSS sütunları, duvar örgüsüne benzer bir düzen oluşturur: columns: 3; column-gap: 1rem. Öğeler her sütunda otomatik olarak yukarıdan aşağıya akar. Sınırlama: öğeler satır satır değil, sütun sütun sıralanır (1. sütunun üstü, 2. sütunun üstü...); bu durum okuma sırasını ve erişilebilirliği etkiler.
Sütun Kırılmalarını Önleme
Öğelerin sütunlar arasında bölünmesini önleyin: her öğede break-inside: avoid kullanın. Bu olmadan uzun bir kart iki sütuna bölünebilir ve içeriği ortadan kesebilir. Kart benzeri içerik için CSS sütunlarını kullanırken bunu her zaman ekleyin.
JavaScript Duvar Örgüsü Kütüphaneleri
Masonry.js (David DeSandro tarafından), sütun yüksekliklerini hesaplayıp her öğeyi en kısa sütuna yerleştirerek mutlak konumlandırılmış öğeleri yeniden konumlandırır. Isotope buna sıralama ve filtreleme özelliklerini ekler. Her ikisi de konumları hesaplamak ve uygulamak için JavaScript gerektirir.
CSS Izgarası + JS Hibriti
Hafif bir yaklaşım: sabit sütunlara ve 1 piksellik satırlara sahip bir ızgara tanımlayın, ardından içerik yüksekliğine / satır yüksekliğine göre her öğede grid-row-end: span N ayarlamak için JS kullanın. Öğeler, değişken yüksekliklere ulaşırken ızgara satırı hizalamasını korur.
ResizeObserver ile Yeniden Hesaplama
Duvar örgüsü konumları, pencere boyutu değiştiğinde veya görseller yüklendiğinde geçerliliğini yitirir. Boyut değişikliklerini algılamak ve yeniden hesaplamayı tetiklemek için ResizeObserver kullanın. Hızlı yeniden boyutlandırma olayları sırasında aşırı hesaplamayı önlemek için yeniden hesaplamaları geciktirerek birleştirin.
Görsel Yükleme ve Düzen Kararlılığı
Yükseklikleri bilinmeyen görseller, yüklendikten sonra duvar örgüsünün yeniden hesaplanmasına neden olur. Tarayıcının yükleme öncesinde alan ayırabilmesi için tüm görsellerde açık genişlik ve yükseklik öznitelikleri sağlayın. Bu, konum kaymalarını önler ve yeniden hesaplama geçişlerinin sayısını azaltır.
Duvar Örgüsüyle Sonsuz Kaydırma
Bir duvar örgüsü düzenine öğe eklemek, tüm ızgarayı değil yalnızca etkilenen sütunları (yeni öğelerin bulunduğu sütunları) yeniden hesaplamayı gerektirir. Masonry.js gibi kütüphaneler, eklenen öğe animasyonunu ve her yeni grup için tüm düzeni yeniden kurmadan artımlı düzenlemeyi destekler.
Erişilebilirlik Hususları
JavaScript ile konumlandırılan düzenlerde görsel duvar örgüsü sırası, DOM sırasından farklıdır. Sekme sırasının görsel konumu değil, DOM sırasını (mantıksal okuma sırasını) izlemesini sağlayın. tabindex özniteliğini dikkatli ekleyin veya klavye gezintisi için doğal DOM akışına güvenin.
Yalnızca CSS Duvar Örgüsünün Ödünleşimleri
CSS sütunları basittir ve JS gerektirmez; ancak sütun sıralı (satır sıralı olmayan) bir okuma dizisine sahiptir ve filtreleme ya da sıralama sunmaz. Izgara duvar örgüsü henüz üretimde desteklenmemektedir. JS duvar örgüsü kapsamlı özellikler sunar, ancak konumlar içerik yüklendikten sonra hesaplandığı için ek yük ve işleme gecikmesi getirir.
Bilgi Kontrolü
Bir kartın iki CSS sütununa bölünmesini hangi CSS özelliği önler?
Özet
Duvar örgüsü düzeni; CSS sütunlarıyla (basit ancak sütun sıralı), deneysel grid-template-rows: masonry ile (geleceğe dönük) veya Masonry.js gibi JavaScript kütüphaneleriyle (sıralama ve filtreleme özellikleriyle kapsamlı) oluşturulabilir. Her yaklaşım basitlik, erişilebilirlik ve yetenek arasında farklı ödünleşimler içerir.
Sıkça Sorulan Sorular
“Mozaik Yerleşimi: CSS ve JS Yaklaşımları” dersi ücretsiz mi?
Evet — “Mozaik Yerleşimi: CSS ve JS Yaklaşımları” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve CSS Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. CSS Academy kursu toplamda 4 dersten oluşur.
“Mozaik Yerleşimi: CSS ve JS Yaklaşımları” dersinde ne öğreneceğim?
CSS column-count ve JavaScript geri dönüş stratejilerini kullanarak Pinterest tarzı mozaik ızgaralar oluşturun. CSS Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
CSS Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te CSS Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.
“Mozaik Yerleşimi: CSS ve JS Yaklaşımları” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu CSS Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her CSS Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Sabit Alt Bilgi ve Kenar Çubuğu Yerleşimi
- Grid ile Kutsal Kâse Yerleşimi
- Mozaik Yerleşimi: CSS ve JS Yaklaşımları
- İçsel Tasarım: İçerik Odaklı Boyutlandırma