Source

Esnek

Tam bir duyarlı flexbox yardımcı programı paketiyle ızgara sütunlarının, navigasyonun, bileşenlerin ve daha fazlasının yerleşimini, hizalamasını ve boyutlandırılmasını hızla yönetin. Daha karmaşık uygulamalar için özel CSS gerekli olabilir.

Esnek davranışları etkinleştir

displayBir esnek kutu kabı oluşturmak ve doğrudan alt öğeleri esnek öğelere dönüştürmek için yardımcı programları uygulayın . Esnek kaplar ve öğeler, ek esnek özelliklerle daha fazla değiştirilebilir.

Ben bir esnek kutu kabıyım!
<div class="d-flex p-2 bd-highlight">I'm a flexbox container!</div>
Ben bir satır içi esnek kutu kabıyım!
<div class="d-inline-flex p-2 bd-highlight">I'm an inline flexbox container!</div>

Duyarlı varyasyonlar da ve için .d-flexmevcuttur .d-inline-flex.

  • .d-flex
  • .d-inline-flex
  • .d-sm-flex
  • .d-sm-inline-flex
  • .d-md-flex
  • .d-md-inline-flex
  • .d-lg-flex
  • .d-lg-inline-flex
  • .d-xl-flex
  • .d-xl-inline-flex

Yön

Yön yardımcı programlarıyla esnek bir kapta esnek öğelerin yönünü ayarlayın. Çoğu durumda, tarayıcı varsayılanı olduğu için yatay sınıfı burada atlayabilirsiniz row. Ancak, bu değeri açıkça ayarlamanız gereken durumlarla (duyarlı düzenler gibi) karşılaşabilirsiniz.

.flex-rowYatay bir yön (tarayıcı varsayılanı) ayarlamak veya .flex-row-reverseyatay yönü karşı taraftan başlatmak için kullanın .

Esnek öğe 1
Esnek öğe 2
Esnek öğe 3
Esnek öğe 1
Esnek öğe 2
Esnek öğe 3
<div class="d-flex flex-row bd-highlight mb-3">
  <div class="p-2 bd-highlight">Flex item 1</div>
  <div class="p-2 bd-highlight">Flex item 2</div>
  <div class="p-2 bd-highlight">Flex item 3</div>
</div>
<div class="d-flex flex-row-reverse bd-highlight">
  <div class="p-2 bd-highlight">Flex item 1</div>
  <div class="p-2 bd-highlight">Flex item 2</div>
  <div class="p-2 bd-highlight">Flex item 3</div>
</div>

.flex-columnDikey yönü ayarlamak veya .flex-column-reversedikey yönü karşı taraftan başlatmak için kullanın .

Esnek öğe 1
Esnek öğe 2
Esnek öğe 3
Esnek öğe 1
Esnek öğe 2
Esnek öğe 3
<div class="d-flex flex-column bd-highlight mb-3">
  <div class="p-2 bd-highlight">Flex item 1</div>
  <div class="p-2 bd-highlight">Flex item 2</div>
  <div class="p-2 bd-highlight">Flex item 3</div>
</div>
<div class="d-flex flex-column-reverse bd-highlight">
  <div class="p-2 bd-highlight">Flex item 1</div>
  <div class="p-2 bd-highlight">Flex item 2</div>
  <div class="p-2 bd-highlight">Flex item 3</div>
</div>

için duyarlı varyasyonlar da mevcuttur flex-direction.

  • .flex-row
  • .flex-row-reverse
  • .flex-column
  • .flex-column-reverse
  • .flex-sm-row
  • .flex-sm-row-reverse
  • .flex-sm-column
  • .flex-sm-column-reverse
  • .flex-md-row
  • .flex-md-row-reverse
  • .flex-md-column
  • .flex-md-column-reverse
  • .flex-lg-row
  • .flex-lg-row-reverse
  • .flex-lg-column
  • .flex-lg-column-reverse
  • .flex-xl-row
  • .flex-xl-row-reverse
  • .flex-xl-column
  • .flex-xl-column-reverse

İçeriği doğrula

justify-contentAna eksendeki esnek öğelerin hizalamasını değiştirmek için esnek kutu kaplarındaki yardımcı programları kullanın (başlangıç ​​için x ekseni, ise y ekseni flex-direction: column). start(tarayıcı varsayılanı), end, center, betweenveya arasından seçim yapın around.

esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
<div class="d-flex justify-content-start">...</div>
<div class="d-flex justify-content-end">...</div>
<div class="d-flex justify-content-center">...</div>
<div class="d-flex justify-content-between">...</div>
<div class="d-flex justify-content-around">...</div>

için duyarlı varyasyonlar da mevcuttur justify-content.

  • .justify-content-start
  • .justify-content-end
  • .justify-content-center
  • .justify-content-between
  • .justify-content-around
  • .justify-content-sm-start
  • .justify-content-sm-end
  • .justify-content-sm-center
  • .justify-content-sm-between
  • .justify-content-sm-around
  • .justify-content-md-start
  • .justify-content-md-end
  • .justify-content-md-center
  • .justify-content-md-between
  • .justify-content-md-around
  • .justify-content-lg-start
  • .justify-content-lg-end
  • .justify-content-lg-center
  • .justify-content-lg-between
  • .justify-content-lg-around
  • .justify-content-xl-start
  • .justify-content-xl-end
  • .justify-content-xl-center
  • .justify-content-xl-between
  • .justify-content-xl-around

Öğeleri hizala

align-itemsÇapraz eksendeki esnek öğelerin hizalamasını değiştirmek için esnek kutu kaplarındaki yardımcı programları kullanın (y ekseni başlangıç, x ekseni ise flex-direction: column). start, end, center, baselineveya stretch(tarayıcı varsayılanı) arasından seçim yapın .

esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
<div class="d-flex align-items-start">...</div>
<div class="d-flex align-items-end">...</div>
<div class="d-flex align-items-center">...</div>
<div class="d-flex align-items-baseline">...</div>
<div class="d-flex align-items-stretch">...</div>

için duyarlı varyasyonlar da mevcuttur align-items.

  • .align-items-start
  • .align-items-end
  • .align-items-center
  • .align-items-baseline
  • .align-items-stretch
  • .align-items-sm-start
  • .align-items-sm-end
  • .align-items-sm-center
  • .align-items-sm-baseline
  • .align-items-sm-stretch
  • .align-items-md-start
  • .align-items-md-end
  • .align-items-md-center
  • .align-items-md-baseline
  • .align-items-md-stretch
  • .align-items-lg-start
  • .align-items-lg-end
  • .align-items-lg-center
  • .align-items-lg-baseline
  • .align-items-lg-stretch
  • .align-items-xl-start
  • .align-items-xl-end
  • .align-items-xl-center
  • .align-items-xl-baseline
  • .align-items-xl-stretch

kendini hizala

align-selfÇapraz eksendeki hizalamalarını ayrı ayrı değiştirmek için flexbox öğelerindeki yardımcı programları kullanın (y ekseni başlangıç ​​için, x ekseni ise flex-direction: column). align-items: start, end, center, baselineveya ile aynı seçenekler arasından seçim yapın stretch(tarayıcı varsayılanı).

esnek öğe
Hizalanmış esnek öğe
esnek öğe
esnek öğe
Hizalanmış esnek öğe
esnek öğe
esnek öğe
Hizalanmış esnek öğe
esnek öğe
esnek öğe
Hizalanmış esnek öğe
esnek öğe
esnek öğe
Hizalanmış esnek öğe
esnek öğe
<div class="align-self-start">Aligned flex item</div>
<div class="align-self-end">Aligned flex item</div>
<div class="align-self-center">Aligned flex item</div>
<div class="align-self-baseline">Aligned flex item</div>
<div class="align-self-stretch">Aligned flex item</div>

için duyarlı varyasyonlar da mevcuttur align-self.

  • .align-self-start
  • .align-self-end
  • .align-self-center
  • .align-self-baseline
  • .align-self-stretch
  • .align-self-sm-start
  • .align-self-sm-end
  • .align-self-sm-center
  • .align-self-sm-baseline
  • .align-self-sm-stretch
  • .align-self-md-start
  • .align-self-md-end
  • .align-self-md-center
  • .align-self-md-baseline
  • .align-self-md-stretch
  • .align-self-lg-start
  • .align-self-lg-end
  • .align-self-lg-center
  • .align-self-lg-baseline
  • .align-self-lg-stretch
  • .align-self-xl-start
  • .align-self-xl-end
  • .align-self-xl-center
  • .align-self-xl-baseline
  • .align-self-xl-stretch

Doldurmak

.flex-fillMevcut tüm yatay alanı kaplarken onları eşit genişliklere zorlamak için bir dizi kardeş öğe üzerinde sınıfı kullanın . Özellikle eşit genişlikte veya gerekçeli gezinme için kullanışlıdır.

esnek öğe
esnek öğe
esnek öğe
<div class="d-flex bd-highlight">
  <div class="p-2 flex-fill bd-highlight">Flex item</div>
  <div class="p-2 flex-fill bd-highlight">Flex item</div>
  <div class="p-2 flex-fill bd-highlight">Flex item</div>
</div>

için duyarlı varyasyonlar da mevcuttur flex-fill.

  • .flex-fill
  • .flex-sm-fill
  • .flex-md-fill
  • .flex-lg-fill
  • .flex-xl-fill

Büyü ve küçül

.flex-grow-*Esnek bir öğenin mevcut alanı dolduracak şekilde büyüme yeteneğini değiştirmek için yardımcı programları kullanın . Aşağıdaki örnekte, .flex-grow-1öğeler, kalan iki esnek öğeye gerekli alanlarını sağlarken, tüm kullanılabilir alanı kullanır.

esnek öğe
esnek öğe
Üçüncü esnek öğe
<div class="d-flex bd-highlight">
  <div class="p-2 flex-grow-1 bd-highlight">Flex item</div>
  <div class="p-2 bd-highlight">Flex item</div>
  <div class="p-2 bd-highlight">Third flex item</div>
</div>

.flex-shrink-*Esnek bir öğenin gerektiğinde küçültme özelliğini değiştirmek için yardımcı programları kullanın . Aşağıdaki örnekte, ile ikinci esnek öğe, .flex-shrink-1içeriğini yeni bir satıra sarmaya zorlanır, önceki esnek öğe için daha fazla alan sağlamak için "küçülür" .w-100.

esnek öğe
esnek öğe
<div class="d-flex bd-highlight">
  <div class="p-2 w-100 bd-highlight">Flex item</div>
  <div class="p-2 flex-shrink-1 bd-highlight">Flex item</div>
</div>

Duyarlı varyasyonlar da ve için flex-growmevcuttur flex-shrink.

  • .flex-{grow|shrink}-0
  • .flex-{grow|shrink}-1
  • .flex-sm-{grow|shrink}-0
  • .flex-sm-{grow|shrink}-1
  • .flex-md-{grow|shrink}-0
  • .flex-md-{grow|shrink}-1
  • .flex-lg-{grow|shrink}-0
  • .flex-lg-{grow|shrink}-1
  • .flex-xl-{grow|shrink}-0
  • .flex-xl-{grow|shrink}-1

Otomatik kenar boşlukları

Flexbox, esnek hizalamaları otomatik kenar boşluklarıyla karıştırdığınızda oldukça harika şeyler yapabilir. Aşağıda, otomatik kenar boşlukları aracılığıyla esnek öğeleri kontrol etmenin üç örneği gösterilmektedir: varsayılan (otomatik kenar boşluğu yok), iki öğeyi sağa .mr-autoitme ( ) ve iki öğeyi sola itme ( .ml-auto).

Ne yazık ki, IE10 ve IE11, üst öğesi varsayılan olmayan bir justify-contentdeğere sahip esnek öğelerde otomatik kenar boşluklarını düzgün şekilde desteklemez. Daha fazla ayrıntı için bu StackOverflow yanıtına bakın.

esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
<div class="d-flex bd-highlight mb-3">
  <div class="p-2 bd-highlight">Flex item</div>
  <div class="p-2 bd-highlight">Flex item</div>
  <div class="p-2 bd-highlight">Flex item</div>
</div>

<div class="d-flex bd-highlight mb-3">
  <div class="mr-auto p-2 bd-highlight">Flex item</div>
  <div class="p-2 bd-highlight">Flex item</div>
  <div class="p-2 bd-highlight">Flex item</div>
</div>

<div class="d-flex bd-highlight mb-3">
  <div class="p-2 bd-highlight">Flex item</div>
  <div class="p-2 bd-highlight">Flex item</div>
  <div class="ml-auto p-2 bd-highlight">Flex item</div>
</div>

hizalama öğeleri ile

align-itemsBir esnek öğeyi , flex-direction: columnve margin-top: autoveya karıştırarak bir kabın üstüne veya altına dikey olarak taşıyın margin-bottom: auto.

esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
<div class="d-flex align-items-start flex-column bd-highlight mb-3" style="height: 200px;">
  <div class="mb-auto p-2 bd-highlight">Flex item</div>
  <div class="p-2 bd-highlight">Flex item</div>
  <div class="p-2 bd-highlight">Flex item</div>
</div>

<div class="d-flex align-items-end flex-column bd-highlight mb-3" style="height: 200px;">
  <div class="p-2 bd-highlight">Flex item</div>
  <div class="p-2 bd-highlight">Flex item</div>
  <div class="mt-auto p-2 bd-highlight">Flex item</div>
</div>

Paketlemek

Esnek öğelerin esnek bir kapta nasıl sarılacağını değiştirin. ile hiç sarmalama (tarayıcı varsayılanı) .flex-nowrap, ile sarma .flex-wrapveya ile ters sarma arasından seçim yapın .flex-wrap-reverse.

esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
<div class="d-flex flex-nowrap">
  ...
</div>
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
<div class="d-flex flex-wrap">
  ...
</div>
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
<div class="d-flex flex-wrap-reverse">
  ...
</div>

için duyarlı varyasyonlar da mevcuttur flex-wrap.

  • .flex-nowrap
  • .flex-wrap
  • .flex-wrap-reverse
  • .flex-sm-nowrap
  • .flex-sm-wrap
  • .flex-sm-wrap-reverse
  • .flex-md-nowrap
  • .flex-md-wrap
  • .flex-md-wrap-reverse
  • .flex-lg-nowrap
  • .flex-lg-wrap
  • .flex-lg-wrap-reverse
  • .flex-xl-nowrap
  • .flex-xl-wrap
  • .flex-xl-wrap-reverse

Emir

Bir avuç yardımcı programla belirli esnek öğelerin görsel sırasını değiştirin order. DOM siparişini kullanmak için yalnızca bir öğeyi ilk veya son yapmak için seçenekler ve ayrıca sıfırlama sağlarız. orderHerhangi bir tamsayı değeri alırken (örneğin, ) 5, gereken ek değerler için özel CSS ekleyin.

İlk esnek öğe
İkinci esnek öğe
Üçüncü esnek öğe
<div class="d-flex flex-nowrap bd-highlight">
  <div class="order-3 p-2 bd-highlight">First flex item</div>
  <div class="order-2 p-2 bd-highlight">Second flex item</div>
  <div class="order-1 p-2 bd-highlight">Third flex item</div>
</div>

için duyarlı varyasyonlar da mevcuttur order.

  • .order-0
  • .order-1
  • .order-2
  • .order-3
  • .order-4
  • .order-5
  • .order-6
  • .order-7
  • .order-8
  • .order-9
  • .order-10
  • .order-11
  • .order-12
  • .order-sm-0
  • .order-sm-1
  • .order-sm-2
  • .order-sm-3
  • .order-sm-4
  • .order-sm-5
  • .order-sm-6
  • .order-sm-7
  • .order-sm-8
  • .order-sm-9
  • .order-sm-10
  • .order-sm-11
  • .order-sm-12
  • .order-md-0
  • .order-md-1
  • .order-md-2
  • .order-md-3
  • .order-md-4
  • .order-md-5
  • .order-md-6
  • .order-md-7
  • .order-md-8
  • .order-md-9
  • .order-md-10
  • .order-md-11
  • .order-md-12
  • .order-lg-0
  • .order-lg-1
  • .order-lg-2
  • .order-lg-3
  • .order-lg-4
  • .order-lg-5
  • .order-lg-6
  • .order-lg-7
  • .order-lg-8
  • .order-lg-9
  • .order-lg-10
  • .order-lg-11
  • .order-lg-12
  • .order-xl-0
  • .order-xl-1
  • .order-xl-2
  • .order-xl-3
  • .order-xl-4
  • .order-xl-5
  • .order-xl-6
  • .order-xl-7
  • .order-xl-8
  • .order-xl-9
  • .order-xl-10
  • .order-xl-11
  • .order-xl-12

İçeriği hizala

Esnek öğeleri çapraz eksende align-contenthizalamak için esnek kutu kaplarındaki yardımcı programları kullanın . (tarayıcı varsayılanı), , , , veya arasından seçim yapın . Bu yardımcı programları göstermek için esnek öğelerin sayısını zorunlu kıldık ve artırdık.startendcenterbetweenaroundstretchflex-wrap: wrap

Önüne bak! Bu özelliğin tek sıra esnek öğe üzerinde hiçbir etkisi yoktur.

esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
<div class="d-flex align-content-start flex-wrap">
  ...
</div>
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
<div class="d-flex align-content-end flex-wrap">...</div>
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
<div class="d-flex align-content-center flex-wrap">...</div>
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
<div class="d-flex align-content-between flex-wrap">...</div>
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
<div class="d-flex align-content-around flex-wrap">...</div>
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
esnek öğe
<div class="d-flex align-content-stretch flex-wrap">...</div>

için duyarlı varyasyonlar da mevcuttur align-content.

  • .align-content-start
  • .align-content-end
  • .align-content-center
  • .align-content-around
  • .align-content-stretch
  • .align-content-sm-start
  • .align-content-sm-end
  • .align-content-sm-center
  • .align-content-sm-around
  • .align-content-sm-stretch
  • .align-content-md-start
  • .align-content-md-end
  • .align-content-md-center
  • .align-content-md-around
  • .align-content-md-stretch
  • .align-content-lg-start
  • .align-content-lg-end
  • .align-content-lg-center
  • .align-content-lg-around
  • .align-content-lg-stretch
  • .align-content-xl-start
  • .align-content-xl-end
  • .align-content-xl-center
  • .align-content-xl-around
  • .align-content-xl-stretch