Yeni başlayanlar için CSS Flexbox Eğitimi – Nedir ve Nasıl Kullanılır
Web tasarımının geliştirilmesi olarak, web sitesindeki öğeleri yönetmenin çeşitli standart yolları vardır. CSS Flexbox, bir düzen ve Web’in her geliştiricisi ve tasarımcısı tarafından bilinmesi gereken bir şey yapmanın nispeten yeni ama güçlü bir yoludur. Nasıl kullanılacağını bilmiyorsanız, bu derin Flexbox eğitimi onu değiştirmeyi amaçlamaktadır. Aşağıdaki yazı Flexbox’ın ne olduğu, neden önemli olduğu ve temel kavram hakkında konuşulacaktır. Bundan sonra, FlexBox ile ilgili mülk ve CSS değerlerini ayrıntılı olarak tartışacağız ve kullanım örnekleriyle tamamlayacağız. Pekala, tartışacak birçok şeyimiz var ve bu biraz teknik olacak, bu yüzden CSS gözlüklerinizi giyip başlayalım.
CSS Flexbox nedir? Flexbox, esnek kutunun kısaltmasıdır. Bu, çok uyarlanabilir bir tasarım oluşturmak için web sitesinin öğelerini yönetmek, yönetmek ve ölçmek için etkili bir yol sunmayı amaçlayan CSS için bir düzen modülüdür. Tabii ki, web bileşenlerini sayfalara yerleştirmek için teknoloji yeni değil. İnternetin başlangıcından bu yana, web tasarımcıları görüntüleri, metin ve diğer içeriği istedikleri yere yerleştirmek için çeşitli yollar kullandılar. Bununla birlikte, bu, ilk etapta (şamandıra) bir düzen aracı olarak düşünülmeyen duyarlı tasarım (tablo) için uygun değildir, öğeler için aynı yüksekliği belirlemenize izin vermez (satır içi blok) veya diğer problemlere sahip değildir.
Dolayısıyla, tasarımcılar ve geliştiriciler bunu uzun süre yaparken, hala imkansız olan veya çalışması için JavaScript’e ihtiyaç duyan birçok tasarım deseni var. Yaygın bir örnek dikey konsantrasyon ve aynı sütun, kutsal web tasarımından ikisidir. Flexbox arasındaki fark nedir? Flexbox’ın çalışma şekli yüzeyde oldukça basittir: Flex hatları boyunca yerleştirilen çocuklarla (içinde bulunan, Flex Maddes olarak adlandırılan elementler) bir kap (esnek kap) var. Çizgiler ve öğeler, birçok operatör kullanarak dikey ve yatay eksenler boyunca düzen, boyut, mesafe ve diğerlerinde manipüle edilebilir. Bu, mevcut alanı olabildiğince kullanmanıza ve öğelerin buna göre kendilerini otomatik olarak düzenlemesine izin vermenize olanak tanır. Görselleştirilmesi zorsa, bu şema (W3.org’a ait) açıklığa kavuşturmak için:
Hala tam olarak emin değil misiniz? Seni suçlayamam. Daha ayrıntılı konuşalım. Bahsedilen temel kavram olan Flexbox, tek bir özellik değil, tüm CSS modülüdür. Bu nedenle, bazıları ana konteyner için, bazıları çocukları için kendi operatörlerinin çoğuyla birlikte gelir. Nasıl çalıştığını anlamak için, yukarıdaki resimde görüntülenen Flexbox’ın konseptini ve terminolojisini bulmanız önemlidir:
Play-sart, oyun sonu-bu, ayarlandığı öğenin başlangıç noktasını ve sonunu temsil eder.
Ana Boyut – Bu, ana eksenin yönüne bağlı olarak esnek öğelerin genişliğini veya yüksekliğini gösterir.
Çapraz eksen – Eksen ana eksene diktir. Yön ayrıca ana eksenin nasıl tanımlandığına bağlıdır.
Çapraz Boyut – Ana boyuta göre belirlenmeyen esnek öğelerin başka bir boyutunu gösterir.
Yazma modunu soldan sağa sağa veya hatta dikey olarak yazma yönünü değiştirmenizi sağlar. Bu, tarayıcının desteği olmadan veya biraz çalışan bir iştir, ancak bazı özellikleri daha fazla bulmak önemlidir.
Gördüğünüz gibi, Flexbox hakkında birçok şey biraz soyut ve tamamen belirlenmiyor. Sonuç olarak, aşağıdaki CSS’nin çoğu ayarlarınıza bağlıdır.
Ne zaman FlexBox kullanılır tüm web sayfalarını oluşturmak için FlexBox kullanabilseniz bile, önerilen bir kullanımı değildir. Daha büyük bir düzen için ızgarayı düşünün (başka bir zamanda daha fazla). Öte yandan Flexbox, en çok düzen ve küçük ölçekli uygulamalar için uygundur:
Gezinme Menüsü
kartı düzeni
medya öğeleri
İnternet formu
Flexbox tarayıcı desteği ilk olarak on yılların başlarında önerildi ve W3C tarafından 2012’de benimsenmesi önerildi. O zamandan beri tarayıcı onu desteklemeye başladı ve şimdi tüm modern tarayıcılar Flexbox’ı işleyebilir.
CSS Flexbox özelliği iyi kullanılabilir, şimdi teoriyi bitirdikten sonra, Flexbox’ın neler yapabileceğini görelim. Aşağıdaki özellik ile, özellikleri kabı ve ayrıca öğeleri tek tek ayarlayarak düzeninizi manipüle edebilirsiniz. İlkle başlayacağız ve sonra sonuna döneceğiz. Bu esnek yön, ana ekseni ve sonuç olarak esnek öğenizin yerleştirilmesinin yönünü belirler. Bu aynı zamanda temel HTML’yi değiştirmenizi gerektiren öğelerin sırasını değiştirmenizi sağlar. Mevcut özellikler şunlardır: Satır – Standart. Yazma modu nedeniyle sağ sol ortamda olmadığınız sürece esnek öğeleri soldan sağa ayarlayın.
Row-Reverse, öğeyi yatay olarak ancak ters sırayla ayarlayın. Sütun – Sıra ile aynı ancak yukarıdan aşağıya düzenlenmiş öğelerle dikey.
Sütun-ters-sen bunu tahmin edebilirsiniz. Sütun-geri aşağıdan yukarıya öğeleri görüntüler.
Esnek bir kapta esnek bir kapta varsayılan öğe davranışı, kendini bir satırda düzenlemektir. Flex-wrap, değiştirmenizi sağlar.
NowRap – Varsayılan değer tüm öğeleri bir satıra yerleştirir.
Sarma – Bir satır yeterli değilse, bununla, öğe kendini yukarıdan aşağıya birkaç satır halinde düzenler. Wrap-ters-Wrap ile aynı ancak aşağıdan yukarıya sipariş edilen eşyalarla.
Bu esnek akış, esnek yönlendirme ve esnek sargı için bir kısaltmadır. Kullanmak:
.flex-container {ekran: flex; Esnek akış: satır sargısı; } Flex-Flow özelliği, iki ana konteyner eksenini belirlemenizi sağlar. Varsayılan değer satır nowrap, yukarıdaki iki özelliğin tüm olası değerleri geçerlidir. Bir sonraki CSS FlexBox özellik içeriğini haklı çıkarmak, ana eksendeki öğelerin seviyesini tanımlar. Bu, mevcut boş alanda neler olduğuna karar verir ve öğe kaptan daha geniş hale geldiğinde hizalama üzerinde kontrole sahiptir. İşte seçebileceğiniz değerler: Flex-start-default değeri. Öğe esnek yönlendirmenin önüne paraleldir.
Esnek yönlendirme sonunda esnek uçlu öğeler. Başlangıç noktası olarak yazma modunun başlangıcını belirleyin.
Sonu öğeyi yazma modunun sonuna kadar hareket ettirin.
Sol – Esnek öğeleri kabın sol kenarına doğru düzleştirir. Eğer esnek yönlendirme nedeniyle mantıklı değilse, başlangıç gibi davranır.
Sağ – solla aynı ama sağ kenar için.
Merkez – merkez öğesi yatay olarak.
Uzay arası dağıtımları kapta eşit olarak dağıtır. Birincisi başlangıca yol açar, sonuna kadar aralarındaki eşit mesafe (bu isim yüzünden).
Alan-Arome-Öğe, etrafında aynı boşlukla eşit olarak yerleştirilir. Kenarlar gibi öğeler arasında çift alana sahip olduğunuz bir marj veya dolgu gibi davrandığını unutmayın.
Boşluk bile konteynere eşit olarak yerleştirilir, ancak her biri arasındaki ve kabın kenarına doğru olan mesafe düzdür.
Dikkatli olun çünkü bu değerler için tarayıcı desteği oldukça sorunludur. Örneğin, aradaki boşluk, Chrome’da henüz değil, Edge ve Start / End / Sol / Sağ’ın çeşitli sürümlerinde desteklenmez. En güvenli değer esnek başlangıç, esnek uç ve merkezdir. Sejajajah Bu özellik, öğelerin haç boyunca nasıl hizalandığını kontrol eder. Bu, eksen oynamayı haklı çıkarmak için eşdeğerdir. Mevcut değerler aşağıdadır:
Streç – Konteyneri doldurmak için öğeleri yayan varsayılan değer.
Çapraz eksenin başlangıcında esnek başlangıç, başlat, kendi kendine hizalanma esnek öğeleri. Her yazma modunu başlatın ve kendi kendine başlatın, esnek yönlendirme ve yazma moduna uygundur.
Esnek uç, son, kendi kendine uç-yukarıdaki ile aynı, ancak öğeyi çapraz eksenin sonuna koyun. Merkez – Öğe çapraz eksenin ortasındadır.
Baseline – Esnek öğeleri zemin hattı boyunca hizalayın.
Burada da tarayıcı desteğine dikkat etmek önemlidir.
Çapraz eksende ekstra alan varsa, mülkün uyumlu hale getirilmesi esnek çizgiyi kontrol etmekten sorumludur. Bu, haklı-içerikle benzer. Aşağıdaki değerin uygulanabilmesi için birden fazla ürün satırına ihtiyacınız var.
Streç – Varsayılan değer. Hat, mevcut tüm alanı almak için uzanır.
Esnek başlangıç, başlangıç öğeleri kabın başlangıcında paraleldir. Flex-star, esnek yönlendirme, yazma moduna başlar.
Flex-End, End-Flex-Star ile aynı anlaşma ve sadece konteynerin sonuna taşınan öğeleri başlatın.
Uzay arası, esnek çizgileri başlangıçta ilk sıra yerleştirilmiş bir kapta eşit olarak, sonunda sonuna kadar dağıtır.
Uzay-uzatma dağıtım, her satırın etrafında eşit olarak dağıtılmış bir alanla eşit olarak dağıtılır. Aynı şekilde, uzay-dağıtım, öğenin etrafında aynı boşlukla eşit olarak dağıtılır.
Sipariş bununla başlar, kalan tüm kurallar kaplar yerine esnek öğeler için geçerlidir. Sipariş özelliğinin kapta görüntülediği yer kontrolleri.
Örneğin, tüm esnek öğeler için varsayılan değer sipariş: 0; . Belirli öğeleri satırın öne veya arkasına taşımak istiyorsanız, 1 veya -1 gibi bir değer vererek yapabilirsiniz. Ayrıca satır veya sütun sınırını, satır-ters veya sütun-geri çevirmenin aksine, sıra başına tek tek tersine çevirecek şekilde işlev görür. Yukarıdaki örnek görüntü için aşağıdaki kod:
1
2 3
4
Esnek büyüme, esnek öğelerin gerektiğinde kaplarda büyüme yeteneğini kontrol eder. Flex-büyüme oranları tanımlayan sayılar alır. Örnek: Tüm öğeler esnek olarak düzenlenmişse: 1; Hepsi kaplarına eşit olarak dağıtılır. Ancak, biri 1 ve diğeri 3’e göre düzenlenirse, sonuncusu mevcut alanın dörtte üçünü almaya çalışacaktır.
Flex-Shrink, esnek büyüye benzer, ancak öğelerin diğer öğelere göre küçülme yeteneğini tanımlar. Sayılar ne kadar yüksek olursa, boyut olarak daha fazla azalacak ve tam tersi. Esnek temel
Varsayılan öğenin boyutunun tanımlanması (yükseklik veya genişlik eksene bağlıdır).Bu,% 15 veya 30 piksel gibi mutlak gibi göreceli bir değer olabilir.Yukarıdakileri başardığım yol:
1
2
3
4
Başka bir olası değer: Otomatik – bu varsayılandır.
İçerik – Boyutu öğe içeriğine göre ayarlayın.Tıpkı mevcut olan maksimum, min-concent ve uyum içeriği gibi iyi desteklenmez.
Aynı esnek-baz ile esnek büyüme, esnek-shink ve esnek-bazlar için borç kısaltmaları. Yalnızca ilk parametre zorunludur ve varsayılan değer 0 1 otomatiktir.
1 2
3
4
Genellikle mantıklı Flex-Grow, Flex-shink veya bireysel esnek bazılar yerine bu özelliği kullanmak için bu, kullanmadığınız operatör için makul bir değer uygular. Flex ayrıca (varsa belirtilen boyutu takip eder), otomatik (tamamen esnek hale getirir) ve hiçbirini (tüm öğeleri esnek hale getirir) alabilir. Bunu, örneğin, diğerleri mevcut alana ayarlanırken, sabit genişliğe (başlangıçta) birkaç öğeyi ayarlamak için kullanabilirsiniz. Kendinizi uyumlu hale getirmek, tek tek öğelerin seviyelendirilmesini değiştirmenizi sağlar. Hizalanan öğelerle aynı değere sahiptir. Örnek Flexbox: Son adımla aynı yüksekliğe sahip sütun, yukarıda nasıl kullanılacağına dair örneği tartışacağız. Aynı yükseklik sütununa sahip bir FlexBox düzeni yapalım. HTML ile şu şekilde inşa edebilirsiniz:
sütun 1
lorem iPsum dolor oturma amet, kavram adipiscing elit.
sütun 2
lorem iPsum Dolor oturma amet, elit adipiscing kavramı. Morbi Interdum et ex etkili. Nam Convequat Elementum Tellus, Varus Lectus Condmentum vulputate’de.