place-items
CSS turtas sutrumpinta už align-items
ir justify-items
savybės, derinant juos į vieną deklaraciją.
Dažniausiai horizontaliai ir vertikaliai centruojama naudojant tinklelį:
.center-inside-of-me ( display: grid; place-items: center; )
Šios savybės tapo naudingos įdiegus „Flexbox“ ir „Grid“ išdėstymus, tačiau jos taip pat taikomos:
- Blokinio lygio langeliai
- Visiškai išdėstytos dėžės
- Statiška absoliučiai išdėstytų dėžučių padėtis
- Stalo langeliai
Sintaksė
Nuosavybė priima dvigubas vertes, pirma už align-items
ir antrą už justify-items
. Kaip atnaujinimą, align-items
sulygiuokite turinį išilgai vertikalios (stulpelio) ašies, o justify-items
išilgai horizontalios (eilutės) ašies.
.item ( display: grid; place-items: start center; )
Tai tas pats, kas rašyti:
.item ( display: grid; align-items: start; justify-items: center; )
Jei pateikiama tik viena reikšmė, ji nustato abi savybes. Pavyzdžiui:
.item ( display: grid; place-items: start; )
... yra tas pats, kas parašyti:
.item ( display: grid; align-items: start; justify-items: start; )
Priimtos vertybės
Ši savybė įdomi tuo, kad ji elgiasi skirtingai, atsižvelgiant į naudojamą kontekstą. Pavyzdžiui, kai kurios reikšmės taikomos tik „Flexbox“ ir neveikia tinklelio nustatymuose. Be to, kai kurios vertės taikomos align-items
nuosavybei, o kitos - justify-items
šone.
Be to, galima manyti, kad pačios vertybės patenka į daugybę derinimo tipų: kontekstinę, paskirstymo, pozicinę (kuri tampa savarankiškai, jei makete ji taikoma tiesiogiai vaiko elementui) ir pagrindinę.
Rachel Andrew turi puikų „Box Alignment“ apgaulės lapą, kuris padeda parodyti reikšmių poveikį.
Vertė | Tipas | apibūdinimas |
---|---|---|
auto | Kontekstinis | Vertė atitinkamai koreguojama atsižvelgiant į elemento kontekstą. Ji naudoja justify-items elemento pirminio elemento vertę. Jei nėra pirminio elemento arba jis taikomas elementui, kuris yra išdėstytas absolute , tada reikšmė tampa normal . |
normal | Kontekstinis | Imasi numatytojo išdėstymo konteksto, kuriame jis taikomas, elgesio. • blokinis išdėstymai: start • Absoliutus-pozicionavimo: start pakeistiems absoliučių elementų ir stretch už visus kitus• stalo maketai: Vertė ignoruojamas • Lanksčiojo lauko maketai: Vertė ignoruojamas • Grid maketus: stretch , nebent naudojamas aspektas santykis arba vidinis klijavimas, kur ji elgiasi Kaipstart |
stretch | Paskirstymas | Išplečia elementą į abu konteinerio kraštus vertikaliai align-items ir horizontaliai justify-items . |
start | Pozicinis | Visi elementai yra sulyginti vienas su kitu ant pradinio (kairiojo) konteinerio krašto |
end | Pozicinis | Visi elementai yra sulyginti vienas su kitu ant galinio (dešiniojo) konteinerio krašto |
center | Pozicinis | Elementai yra sulygiuoti šalia konteinerio centro |
left | Pozicinis | Elementai yra sulygiuoti vienas šalia kito kairiosios talpyklos pusės link. Jei savybė nėra lygiagreti standartinei viršutinei, dešinei, apatinei, kairiai ašiai, ji elgiasi taip, kaip end . |
right | Pozicinis | Elementai išlyginti vienas šalia kito, dešinės talpyklos pusės link. Jei savybė nėra lygiagreti standartinei viršutinei, dešinei, apatinei, kairiai ašiai, ji elgiasi taip, kaip start . |
flex-start | Pozicinis | Tik „flexbox“ vertė (kuri nukrenta atgal start ), kai daiktai supakuoti link pradinio konteinerio krašto. |
flex-end | Pozicinis | Tik „flexbox“ vertė (kuri nukrenta atgal end ), kai daiktai supakuoti link galinio konteinerio krašto. |
self-start | Savęs pozicionavimas | Leidžia išdėstymo elementui lygiuotis į sudėtinio rodinio kraštą, atsižvelgiant į jo pradinę pusę. Iš esmės nepaiso nustatytos tėvų vertės. |
self-end | Savęs pozicionavimas | Leidžia maketo elementui lygiuotis į konteinerio kraštą pagal jo galinę pusę, užuot paveldėjus konteinerio pozicinę vertę. Iš esmės nepaiso nustatytos tėvų vertės. |
first baseline last baseline | Bazinė linija | Sulygiuojami visi grupės elementai (ty ląstelės eilėje), suderinant jų pagrindines linijas. Numatytasis first , jei baseline naudojama ant savo. |
Naršyklės palaikymas
Ši savybė yra įtraukta į CSS dėžutės derinimo modelio 3 lygio specifikaciją.
Naršyklės palaikymas tapo gana platus ir dažniausiai naudojamas:
- „Edge 79+“ („Chromium“ transliacija)
- „Firefox 45+“
- „Chrome 59+“
- „Safari 11+“
Nuorodos
- 3 lygio CSS langelio derinimo modelis - oficiali specifikacija, kur
place-items
nuosavybė iš pradžių apibrėžta. - „Mozilla Developer Network“ - „Mozilla“ komandos dokumentai.
- „Box Alignment Cheat Sheet“ - Rachel Andrew metmenys yra labai naudingas šaltinis, norint suvokti derinimo terminus ir jų apibrėžimus.