Flexbox CSS un HTML (pamācība) – izveido responsīvus izkārus.

Flexbox CSS: Izpratne par fleksibloka bāzes un fleksibloka virziena nozīmi

Visi pamācības video Flexibels kastes modelis CSS un HTML (Instruktāža) - izveido responsošus izkārus

Flexbox ir jaudīgs CSS izkārtojuma modulis, kas ļauj izveidot elastīgus un reaģējošus izkārtojumus. Šajā pamācībā mēs pievērsīsimies flex-basis īpašībai , kas ir atbildīga par elementa pamatizmēra noteikšanu flex virzienā. Ir būtiski norādīt atvasināto elementu izmēru neatkarīgi no konkrētajiem flex konteinera izmēriem. Pareizi izmantojot flex-basis, var ievērojami vienkāršot un optimizēt izkārtojuma dizainu.

Galvenie secinājumi

  • flex-basis nosaka elementa sākotnējo izmēru elastīgā konteinera virzienā.
  • Pēc noklusējuma flex-basis vērtība ir 0%, kas nozīmē, ka elements aizņem tikai tik vietas, cik nepieciešams saturam.
  • Izmantojot flex-grow un flex-shrink, elements var pielāgot savu izmēru atkarībā no pieejamās vietas.
  • Flex virziens ietekmē bāzes izmēra interpretāciju.

Soli pa solim

Vispirms aplūkosim, kā flex-base darbojas flex izkārtojumā. Sāciet ar vienkāršu piemēru. Pārliecinieties, ka esat izveidojis flex konteineru ar elementiem.

Flexbox CSS: Izpratne par fleksibloka bāzes un fleksibloka virziena nozīmi

Vispirms definējiet savu elastīgo konteineru. Mūsu piemērā mēs savam konteineram esam iestatījuši display: flex un flex-direction: row. Tas ļauj pakārtotos elementus izvietot horizontāli vienu otram blakus.

Nākamais, ko vēlaties izdarīt, ir izvēlēties elementu konteinerā un piemērot elastības īpašību. Šajā gadījumā mēs izmantojam flex: 1, kas ir flex-grow, flex-shrink un flex-base kombinācija. Aplūkosim atsevišķus komponentus.

Izmantojot flex: 1, elementam tiks piešķirts elastīgs izmērs, bet bāzes noklusējuma izmērs būs 0%. Tas nozīmē, ka tas aizņems tikai tik vietas, cik nepieciešams saturam.

Flexbox CSS: Izpratne par fleksibloka bāzes un fleksibloka virziena nozīmi

Tagad sīkāk aplūkosim īpašību flex-base. To var norādīt tieši, piemēram, sākot mainīt no flex uz flex-basis: 100px. Tādējādi elementa sākotnējais platums tiks iestatīts uz 100 pikseļiem.

Flexbox CSS: Izpratne par fleksibloka bāzes un fleksibloka virziena nozīmi

Saglabājiet izmaiņas, un redzēsiet, ka galvenais elements tagad ir 100 pikseļu plats. Šie 100 pikseļi ir bāzes platums, no kura tiek veidots pārlūkprogrammas izkārtojums.

Flexbox CSS: Izpratne par fleksibloka bāzes un fleksibloka virziena nozīmi

Tas nozīmē, ka elements var aizņemt vairāk vietas, ja elastīga paplašināšana (flex-grow) piešķir tam vairāk vietas, vai mazāk, ja ir aktivizēta elastīga samazināšana (flex-shrink).

Flexbox CSS: Izpratne par fleksibloka bāzes un fleksibloka virziena nozīmi

Alternatīvi var norādīt arī procentus. Mainiet vērtību uz flex-basis: 100%, kas nozīmē, ka elementam ir jāaizņem visa konteinerā pieejamā vieta.

Ja tagad iestatīsiet flex-basis vērtību 0, redzēsiet, ka elements sablīvējas līdz satura norādītajam platumam. Svarīgi atzīmēt, ka 0 nenozīmē, ka elementam nav platuma, tas ir atkarīgs tikai no minimālā satura.

Bieži izmantotā flex-basis vērtība ir auto. Ja iestatāt šo vērtību, izkārtojums kļūst ļoti elastīgs, jo platums mainās atkarībā no satura. Pārbaudiet to, skaidri iestatot platumu, piemēram, 200px, un skatiet, kā elements aizņem 200 pikseļu.

Varat arī mainīt elastīguma virzienu. Iestatiet elastīgo virzienu uz kolonnu. Tas maina veidu, kā tiek interpretēts pamatizmērs - tagad pamatizmērs tiek piemērots vertikālā virzienā.

Ja tagad maināt elastīgo bāzi, attiecīgi ir jāpielāgo elementa augstums. Ja elastīgo bāzi iestatāt uz 100 pikseļiem, elements būs 100 pikseļu augsts, un jums ir iespēja elastīgi mērogot atkarībā no satura.

Flexbox CSS: Izpratne par fleksibloka bāzes un fleksibloka virziena nozīmi

Ir svarīgi to saprast, jo, lai gan platums un augstums ir statiski, flex-bāze mainās atbilstoši elastības virzienam. Tas padara elastīgo bāzi daudz elastīgāku salīdzinājumā ar tradicionālajām izkārtojuma metodēm.

Flexbox CSS: Izpratne par fleksibloka bāzes un fleksibloka virziena nozīmi

Turklāt nākamais solis ir paskaidrot fleksibloka pieauguma un fleksibloka saraušanās nozīmi saistībā ar fleksibloka bāzi. Šīs vērtības nosaka, cik daudz vietas elements aizņem konteinerā atkarībā no tā izmēra un pieejamajiem resursiem.

Flexbox CSS: Izpratne par fleksibloka bāzes un fleksibloka virziena nozīmi

Kopsavilkums

Šajā rokasgrāmatā jūs esat iepazinušies ar elastīgās bāzes pamatiem. Tagad jūs zināt, kā izmantot šo īpašību, lai definētu elementa pamatizmēru un kā flex-virziens ietekmē izkārtojuma attēlojumu. Izmantojot šīs zināšanas, jūs esat gatavi izveidot uzlabotus elastīgo kastes izkārtojumus, kas elastīgi pielāgojas dažādiem ekrāna izmēriem un saturam.

Biežāk uzdotie jautājumi

Kas ir flex-base?flex-base nosaka elastīgā elementa sākotnējo izmēru galvenajā asī.

Kā darbojas flex-grow?flex-grow nosaka, cik daudz vietas elements aizņem salīdzinājumā ar citiem elastīgajiem elementiem, ja ir pieejama vieta.

Kas notiek, ja iestatu flex-base vērtību nulle?Ja iestatāt flex-base vērtību nulle, elementa platums tiek samazināts līdz minimālajam satura platumam.

Vai flex-basis var izmantot arī procentus?Jā, lai noteiktu, cik daudz vietas elementam jāaizņem attiecībā pret konteineru, flex-basis var norādīt procentos.

Kā flex-direction ietekmē flex-basis?Flex-direction nosaka, kā tiek interpretēta flex-basis - vai nu attiecībā pret elementa platumu, vai augstumu.