Igrišče za Flexbox in Grid
Vizualno ustvari postavitve flexbox in CSS grid. Nastavi lastnosti vsebnika in elementov, poimenuj območja mreže, glej rezultat sproti in kopiraj CSS ter HTML.
Predloge
Klikni element v predogledu, da ga izbereš in spodaj urediš njegove lastnosti.
Kako uporabljati igrišče za Flexbox in Grid
- Izberi Postavitev: Flexbox ali Grid, ali začni z eno od Predloge (Centrirano, Navigacijska vrstica, Kartice z zlomom vrstic, Stranska vrstica, Odzivna mreža kartic, Sveti gral, 12 stolpcev).
- Nastavi lastnosti Vsebnik. Za flexbox:
flex-directioninflex-wrap. Za grid:grid-template-columns,grid-template-rows,grid-auto-flow,justify-itemsingrid-template-areas. Skupni sojustify-content,align-items,align-content,row-gap (px)incolumn-gap (px). - Upravljaj Elementi z gumbi Dodaj element, Odstrani izbrani element in Ponastavi izbrani element. Klikni element v predogledu (ali se nanj premakni s tabulatorko in pritisni Enter), da ga izbereš.
- Uredi izbrani element:
orderinalign-selfv obeh načinih,flex-grow,flex-shrinkinflex-basisza flexbox tergrid-area,grid-column,grid-rowinjustify-selfza grid. - Kopiraj Koda CSS in ustrezno Koda HTML z njunima gumboma Kopiraj.
Vsak kontrolnik je standardno polje obrazca, zato celotno igrišče deluje samo s tipkovnico. CSS vsebuje samo lastnosti, ki si jih spremenil glede na privzete, zato je kratek, elementi z enakimi nastavitvami pa si delijo eno pravilo (.item, kadar se vsi ujemajo).
Orodje deluje v tvojem brskalniku. Nič, kar vneseš, se ne pošlje na strežnik.
Flexbox na kratko
Flexbox razporeja elemente vzdolž ene osi. flex-direction določa glavno os (vrstico ali stolpec); justify-content elemente razporedi vzdolž nje (center, space-between …), align-items pa jih postavi na prečno os. Z flex-wrap: wrap se elementi, ki se ne prilegajo, premaknejo v novo vrstico, align-content pa nato razmakne te vrstice.
Vsak element ima tri lastnosti velikosti, ki se običajno zapišejo skupaj kot flex:
flex-basis: začetna velikost (autouporabi vsebino aliwidth);flex-grow: kolikšen del prostega prostora zavzame element (0 = nič, 1 = enak delež);flex-shrink: koliko odda, ko je prostora premalo (0 = se nikoli ne krči).
Predloga Stranska vrstica prikazuje klasičen vzorec: stranska vrstica z flex-basis: 200px in flex-shrink: 0 ter glavno območje z flex-grow: 1.
CSS Grid na kratko
Grid razporeja elemente v dveh dimenzijah. grid-template-columns: repeat(3, 1fr) ustvari tri enake stolpce; fr je delež prostega prostora. repeat(auto-fill, minmax(120px, 1fr)) ustvari toliko stolpcev z vsaj 120px, kolikor jih gre, kar da odzivno mrežo kartic brez medijskih poizvedb.
Elementi zapolnjujejo celice po vrsti, razen če jih postaviš: grid-column: span 2 naredi element širok dva stolpca, grid-column: 1 / -1 ga razteguje čez celotno vrstico.
grid-template-areas ti omogoča, da postavitev narišeš z imeni. Vpiši eno vrstico na vrstico, na primer header header in nato nav main, elementom pa dodeli grid-area: header ali grid-area: main. Pika označuje prazno celico. Vsaka vrstica potrebuje enako število celic in vsako ime mora tvoriti pravokotnik; sicer te orodje opozori.
Pogosta vprašanja
Naj uporabim flexbox ali grid?
Flexbox za enodimenzionalno vsebino, kot so orodne vrstice, skupine gumbov ali centriranje. Grid, kadar se morajo vrstice in stolpci poravnati, kot pri postavitvah strani in galerijah kartic. Dobro se kombinirata: mreža kartic, katerih notranjost uporablja flexbox.
Zakaj align-items nič ne spremeni?
V vrstici se elementi privzeto raztegnejo na višino vsebnika, vsebnik pa je visok le toliko kot njegova vsebina. Daj mu višino ali si oglej predogled, ki ima najmanjšo višino.
Kaj naredi gap?
Določa razmik med elementi (ne okoli njih). Deluje v flexboxu in gridu v vseh sodobnih brskalnikih.
Ali order spremeni vrstni red branja?
Ne. order elemente premakne samo vizualno; bralniki zaslona in tipkovniška krmarjenja še vedno sledijo vrstnemu redu v HTML, zato ga uporabljaj zmerno.
Sorodna orodja
- Oblikovalnik in zmanjševalnik CSS Uredi neurejen CSS s čistim zamikom ali ga zmanjšaj s csso in poglej velikost pred in po. Deluje v brskalniku; nič se ne naloži na strežnik.
- Generator zaobljenih vogalov (border-radius) Vizualno oblikuj CSS border-radius s premičnimi ročaji. Nastavi vsak vogal v px ali %, uporabi eliptično sintakso z 8 vrednostmi, ustvari madeže, kopiraj kodo.
- Generator sence elementa (box-shadow) Oblikuj večplastne CSS-sence z živim predogledom. Nastavi odmik, zamegljenost, razširitev, barvo, neprosojnost in inset, preizkusi neumorfizem in kopiraj kodo.