ഫ്ലെക്സ്
റെസ്പോൺസീവ് ഫ്ലെക്സ്ബോക്സ് യൂട്ടിലിറ്റികളുടെ പൂർണ്ണ സ്യൂട്ട് ഉപയോഗിച്ച് ഗ്രിഡ് നിരകൾ, നാവിഗേഷൻ, ഘടകങ്ങൾ എന്നിവയും അതിലേറെയും ലേഔട്ട്, വിന്യാസം, വലുപ്പം എന്നിവ വേഗത്തിൽ നിയന്ത്രിക്കുക. കൂടുതൽ സങ്കീർണ്ണമായ നടപ്പാക്കലുകൾക്ക്, ഇഷ്ടാനുസൃത CSS ആവശ്യമായി വന്നേക്കാം.
displayഒരു ഫ്ലെക്സ് ബോക്സ് കണ്ടെയ്നർ സൃഷ്ടിക്കാനും കുട്ടികളുടെ ഡയറക്ട് എലമെന്റുകളെ ഫ്ലെക്സ് ഇനങ്ങളാക്കി മാറ്റാനും യൂട്ടിലിറ്റികൾ പ്രയോഗിക്കുക . ഫ്ലെക്സ് കണ്ടെയ്നറുകളും ഇനങ്ങളും അധിക ഫ്ലെക്സ് പ്രോപ്പർട്ടികൾ ഉപയോഗിച്ച് കൂടുതൽ പരിഷ്കരിക്കാൻ കഴിയും.
<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>
എന്നതിനും പ്രതികരിക്കുന്ന വ്യതിയാനങ്ങളും നിലവിലുണ്ട് .d-flex..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
ദിശ യൂട്ടിലിറ്റികളുള്ള ഒരു ഫ്ലെക്സ് കണ്ടെയ്നറിൽ ഫ്ലെക്സ് ഇനങ്ങളുടെ ദിശ സജ്ജമാക്കുക. മിക്ക സാഹചര്യങ്ങളിലും ബ്രൗസർ ഡിഫോൾട്ട് ആയതിനാൽ നിങ്ങൾക്ക് തിരശ്ചീന ക്ലാസ് ഇവിടെ ഒഴിവാക്കാം row. എന്നിരുന്നാലും, ഈ മൂല്യം വ്യക്തമായി സജ്ജീകരിക്കേണ്ട സാഹചര്യങ്ങൾ നിങ്ങൾക്ക് നേരിടേണ്ടി വന്നേക്കാം (പ്രതികരണാത്മക ലേഔട്ടുകൾ പോലെ).
.flex-rowഒരു തിരശ്ചീന ദിശ (ബ്രൗസർ ഡിഫോൾട്ട്) സജ്ജമാക്കാൻ ഉപയോഗിക്കുക , അല്ലെങ്കിൽ .flex-row-reverseഎതിർ വശത്ത് നിന്ന് തിരശ്ചീന ദിശ ആരംഭിക്കുക.
<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>
.flex-columnഒരു ലംബ ദിശ സജ്ജീകരിക്കുന്നതിനോ .flex-column-reverseഎതിർ വശത്ത് നിന്ന് ലംബ ദിശ ആരംഭിക്കുന്നതിനോ ഉപയോഗിക്കുക .
<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>
എന്നതിനും പ്രതികരിക്കുന്ന വ്യതിയാനങ്ങൾ നിലവിലുണ്ട് 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
പ്രധാന അക്ഷത്തിൽ ഫ്ലെക്സ് ഇനങ്ങളുടെ വിന്യാസം മാറ്റാൻ ഫ്ലെക്സ്ബോക്സ് കണ്ടെയ്നറുകളിലെ യൂട്ടിലിറ്റികൾ ഉപയോഗിക്കുക justify-content(ആരംഭിക്കാനുള്ള x-അക്ഷം, y-അക്ഷം എങ്കിൽ flex-direction: column). start(ബ്രൗസർ ഡിഫോൾട്ട്), , end, center, betweenഅല്ലെങ്കിൽ around.
<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>
എന്നതിനും പ്രതികരിക്കുന്ന വ്യതിയാനങ്ങൾ നിലവിലുണ്ട് 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
ക്രോസ് ആക്സിസിലെ ഫ്ലെക്സ് ഇനങ്ങളുടെ വിന്യാസം മാറ്റാൻ ഫ്ലെക്സ്ബോക്സ് കണ്ടെയ്നറുകളിലെ യൂട്ടിലിറ്റികൾ ഉപയോഗിക്കുക align-items(ആരംഭിക്കാനുള്ള y-അക്ഷം, x-ആക്സിസ് എങ്കിൽ flex-direction: column). start, end, center, baseline, അല്ലെങ്കിൽ stretch(ബ്രൗസർ ഡിഫോൾട്ട്) എന്നിവയിൽ നിന്ന് തിരഞ്ഞെടുക്കുക .
<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>
എന്നതിനും പ്രതികരിക്കുന്ന വ്യതിയാനങ്ങൾ നിലവിലുണ്ട് 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
align-selfക്രോസ് ആക്സിസിൽ അവയുടെ വിന്യാസം വ്യക്തിഗതമായി മാറ്റാൻ ഫ്ലെക്സ്ബോക്സ് ഇനങ്ങളിലെ യൂട്ടിലിറ്റികൾ ഉപയോഗിക്കുക (ആരംഭിക്കാനുള്ള y-അക്ഷം, x-അക്ഷം എങ്കിൽ flex-direction: column). അതേ ഓപ്ഷനുകളിൽ നിന്ന് തിരഞ്ഞെടുക്കുക align-items: start, end, center, baselineഅല്ലെങ്കിൽ stretch(ബ്രൗസർ ഡിഫോൾട്ട്).
<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>
എന്നതിനും പ്രതികരിക്കുന്ന വ്യതിയാനങ്ങൾ നിലവിലുണ്ട് 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
നിങ്ങൾ സ്വയമേവയുള്ള മാർജിനുകളുമായി ഫ്ലെക്സ് അലൈൻമെന്റുകൾ മിക്സ് ചെയ്യുമ്പോൾ Flexbox-ന് വളരെ ആകർഷണീയമായ ചില കാര്യങ്ങൾ ചെയ്യാൻ കഴിയും. ഓട്ടോ മാർജിനുകളിലൂടെ ഫ്ലെക്സ് ഇനങ്ങൾ നിയന്ത്രിക്കുന്നതിനുള്ള മൂന്ന് ഉദാഹരണങ്ങൾ ചുവടെ കാണിച്ചിരിക്കുന്നു: ഡിഫോൾട്ട് (ഓട്ടോ മാർജിൻ ഇല്ല), രണ്ട് ഇനങ്ങൾ വലത്തേക്ക് തള്ളുക ( .mr-auto), രണ്ട് ഇനങ്ങൾ ഇടത്തേക്ക് തള്ളുക ( .ml-auto).
നിർഭാഗ്യവശാൽ, രക്ഷിതാവിന് സ്ഥിരമല്ലാത്ത justify-contentമൂല്യമുള്ള ഫ്ലെക്സ് ഇനങ്ങളിൽ സ്വയമേവയുള്ള മാർജിനുകളെ IE10, IE11 എന്നിവ ശരിയായി പിന്തുണയ്ക്കുന്നില്ല. കൂടുതൽ വിവരങ്ങൾക്ക് ഈ StackOverflow ഉത്തരം കാണുക.
<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>
ഒരു കണ്ടെയ്നറിന്റെ മുകളിലേക്കോ താഴേയ്ക്കോ ഒരു ഫ്ലെക്സ് ഇനം ലംബമായി മിക്സ് ചെയ്ത് align-itemsനീക്കുക flex-direction: column.margin-top: automargin-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>
ഫ്ലെക്സ് ഇനങ്ങൾ ഒരു ഫ്ലെക്സ് കണ്ടെയ്നറിൽ പൊതിയുന്ന രീതി മാറ്റുക. ഉപയോഗിച്ച് പൊതിയേണ്ടതില്ല (ബ്രൗസർ ഡിഫോൾട്ട്) .flex-nowrap, ഉപയോഗിച്ച് പൊതിയുക .flex-wrap, അല്ലെങ്കിൽ റിവേഴ്സ് റാപ്പിംഗ് എന്നിവയിൽ നിന്ന് തിരഞ്ഞെടുക്കുക .flex-wrap-reverse.
<div class="d-flex flex-nowrap">
...
</div>
<div class="d-flex flex-wrap">
...
</div>
<div class="d-flex flex-wrap-reverse">
...
</div>
എന്നതിനും പ്രതികരിക്കുന്ന വ്യതിയാനങ്ങൾ നിലവിലുണ്ട് 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
ഒരുപിടി യൂട്ടിലിറ്റികൾ ഉപയോഗിച്ച് നിർദ്ദിഷ്ട ഫ്ലെക്സ് ഇനങ്ങളുടെ ദൃശ്യ ക്രമം മാറ്റുക . orderഒരു ഇനം ആദ്യമോ അവസാനമോ നിർമ്മിക്കുന്നതിനുള്ള ഓപ്ഷനുകളും DOM ഓർഡർ ഉപയോഗിക്കുന്നതിനുള്ള പുനഃസജ്ജീകരണവും മാത്രമേ ഞങ്ങൾ നൽകുന്നുള്ളൂ. ഏതെങ്കിലും പൂർണ്ണസംഖ്യ orderമൂല്യം എടുക്കുന്നതുപോലെ (ഉദാ, 5), ആവശ്യമുള്ള ഏതെങ്കിലും അധിക മൂല്യങ്ങൾക്കായി ഇഷ്ടാനുസൃത CSS ചേർക്കുക.
<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>
എന്നതിനും പ്രതികരിക്കുന്ന വ്യതിയാനങ്ങൾ നിലവിലുണ്ട് 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
ക്രോസ് ആക്സിസിൽ ഫ്ലെക്സ് ഇനങ്ങൾ ഒരുമിച്ച്align-content വിന്യസിക്കാൻ ഫ്ലെക്സ്ബോക്സ് കണ്ടെയ്നറുകളിൽ യൂട്ടിലിറ്റികൾ ഉപയോഗിക്കുക . (ബ്രൗസർ ഡിഫോൾട്ട്), , , , , അല്ലെങ്കിൽ . ഈ യൂട്ടിലിറ്റികൾ പ്രദർശിപ്പിക്കുന്നതിന്, ഞങ്ങൾ ഫ്ലെക്സ് ഇനങ്ങളുടെ എണ്ണം നടപ്പിലാക്കുകയും വർദ്ധിപ്പിക്കുകയും ചെയ്തു.startendcenterbetweenaroundstretchflex-wrap: wrap
ഹെഡ്സ് അപ്പുകൾ! ഫ്ലെക്സ് ഇനങ്ങളുടെ ഒറ്റവരികളിൽ ഈ പ്രോപ്പർട്ടിക്ക് യാതൊരു സ്വാധീനവുമില്ല.
<div class="d-flex align-content-start flex-wrap">
...
</div>
<div class="d-flex align-content-end flex-wrap">...</div>
<div class="d-flex align-content-center flex-wrap">...</div>
<div class="d-flex align-content-between flex-wrap">...</div>
<div class="d-flex align-content-around flex-wrap">...</div>
<div class="d-flex align-content-stretch flex-wrap">...</div>
എന്നതിനും പ്രതികരിക്കുന്ന വ്യതിയാനങ്ങൾ നിലവിലുണ്ട് 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