Flex
Mabilis na pamahalaan ang layout, alignment, at sizing ng mga grid column, navigation, mga bahagi, at higit pa gamit ang isang buong hanay ng mga tumutugon na flexbox utilities. Para sa mas kumplikadong mga pagpapatupad, maaaring kailanganin ang custom na CSS.
Mag- apply display
ng mga utility para gumawa ng flexbox container at gawing flex item ang mga direktang elemento ng bata . Ang mga flex na lalagyan at mga item ay maaaring mabago pa nang may karagdagang mga katangian ng flex.
<div class="d-flex p-2">I'm a flexbox container!</div>
<div class="d-inline-flex p-2">I'm an inline flexbox container!</div>
Umiiral din ang mga tumutugong variation para sa .d-flex
at .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
Itakda ang direksyon ng mga flex na item sa isang flex container na may mga utility ng direksyon. Sa karamihan ng mga kaso maaari mong alisin ang pahalang na klase dito dahil ang default ng browser ay row
. Gayunpaman, maaari kang makatagpo ng mga sitwasyon kung saan kailangan mong tahasang itakda ang value na ito (tulad ng mga tumutugong layout).
Gamitin .flex-row
upang magtakda ng pahalang na direksyon (ang default ng browser), o .flex-row-reverse
upang simulan ang pahalang na direksyon mula sa kabaligtaran.
<div class="d-flex flex-row">
<div class="p-2">Flex item 1</div>
<div class="p-2">Flex item 2</div>
<div class="p-2">Flex item 3</div>
</div>
<div class="d-flex flex-row-reverse">
<div class="p-2">Flex item 1</div>
<div class="p-2">Flex item 2</div>
<div class="p-2">Flex item 3</div>
</div>
Gamitin .flex-column
upang magtakda ng patayong direksyon, o .flex-column-reverse
upang simulan ang patayong direksyon mula sa kabaligtaran.
<div class="d-flex flex-column">
<div class="p-2">Flex item 1</div>
<div class="p-2">Flex item 2</div>
<div class="p-2">Flex item 3</div>
</div>
<div class="d-flex flex-column-reverse">
<div class="p-2">Flex item 1</div>
<div class="p-2">Flex item 2</div>
<div class="p-2">Flex item 3</div>
</div>
Umiiral din ang mga tumutugong variation para sa 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
Gumamit justify-content
ng mga utility sa mga lalagyan ng flexbox upang baguhin ang pagkakahanay ng mga flex na item sa pangunahing axis (ang x-axis na magsisimula, y-axis kung flex-direction: column
). Pumili mula sa start
(default ng browser), end
, center
, between
, o around
.
Umiiral din ang mga tumutugong variation para sa 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
Gumamit align-items
ng mga utility sa mga lalagyan ng flexbox upang baguhin ang pagkakahanay ng mga flex na item sa cross axis (ang y-axis upang magsimula, x-axis kung flex-direction: column
). Pumili mula sa start
, end
, center
, baseline
, o stretch
(default ng browser).
Umiiral din ang mga tumutugong variation para sa 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
Gumamit align-self
ng mga utility sa mga item ng flexbox upang isa-isang palitan ang kanilang pagkakahanay sa cross axis (ang y-axis na magsisimula, x-axis kung flex-direction: column
). Pumili mula sa parehong mga opsyon bilang align-items
: start
, end
, center
, baseline
, o stretch
(default ng browser).
Umiiral din ang mga tumutugong variation para sa 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
Magagawa ng Flexbox ang ilang magagandang bagay kapag pinaghalo mo ang mga flex alignment sa mga auto margin. Ipinapakita sa ibaba ang tatlong halimbawa ng pagkontrol sa mga flex na item sa pamamagitan ng mga auto margin: default (walang auto margin), pagtulak ng dalawang item sa kanan ( .mr-auto
), at pagtutulak ng dalawang item sa kaliwa ( .ml-auto
).
Sa kasamaang palad, hindi maayos na sinusuportahan ng IE10 at IE11 ang mga auto margin sa mga flex na item na ang magulang ay may hindi default na justify-content
halaga. Tingnan ang sagot na ito ng StackOverflow para sa higit pang mga detalye.
<div class="d-flex">
<div class="p-2">Flex item</div>
<div class="p-2">Flex item</div>
<div class="p-2">Flex item</div>
</div>
<div class="d-flex">
<div class="mr-auto p-2">Flex item</div>
<div class="p-2">Flex item</div>
<div class="p-2">Flex item</div>
</div>
<div class="d-flex">
<div class="p-2">Flex item</div>
<div class="p-2">Flex item</div>
<div class="ml-auto p-2">Flex item</div>
</div>
Patayo na ilipat ang isang flex na item sa itaas o ibaba ng isang lalagyan sa pamamagitan ng paghahalo ng align-items
, flex-direction: column
, at margin-top: auto
o margin-bottom: auto
.
<div class="d-flex align-items-start flex-column" style="height: 200px;">
<div class="mb-auto p-2">Flex item</div>
<div class="p-2">Flex item</div>
<div class="p-2">Flex item</div>
</div>
<div class="d-flex align-items-end flex-column" style="height: 200px;">
<div class="p-2">Flex item</div>
<div class="p-2">Flex item</div>
<div class="mt-auto p-2">Flex item</div>
</div>
Baguhin kung paano bumabalot ang mga flex na item sa isang flex na lalagyan. Pumili mula sa walang wrapping sa lahat (ang browser default) na may .flex-nowrap
, wrapping na may .flex-wrap
, o reverse wrapping na may .flex-wrap-reverse
.
Umiiral din ang mga tumutugong variation para sa 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
Baguhin ang visual na pagkakasunud-sunod ng mga partikular na flex item na may ilang mga order
utility. Nagbibigay lamang kami ng mga opsyon para sa pag-una o huli ng isang item, pati na rin ang pag-reset upang magamit ang order ng DOM. Habang order
tumatagal ang anumang integer na halaga (hal. 5
), magdagdag ng custom na CSS para sa anumang karagdagang mga halaga na kailangan.
<div class="d-flex flex-nowrap">
<div class="order-3 p-2">First flex item</div>
<div class="order-2 p-2">Second flex item</div>
<div class="order-1 p-2">Third flex item</div>
</div>
Umiiral din ang mga tumutugong variation para sa 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
Gumamit align-content
ng mga utility sa mga lalagyan ng flexbox upang ihanay ang mga bagay na baluktot nang magkasama sa cross axis. Pumili mula sa start
(default ng browser), end
, center
, between
, around
, o stretch
. Upang ipakita ang mga utility na ito, ipinatupad flex-wrap: wrap
at dinagdagan namin ang bilang ng mga flex item.
Heads up! Walang epekto ang property na ito sa iisang row ng mga flex item.
Umiiral din ang mga tumutugong variation para sa 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