A position
tulajdonság segíthet az elem helyének manipulálásában, például:
.element ( position: relative; top: 20px; )
Eredeti helyzetéhez viszonyítva a fenti elemet most felülről 20px-rel el fogja tolni. Ha animálnánk ezeket a tulajdonságokat, láthatjuk, hogy ez mekkora kontrollt ad nekünk (bár ez nem jó ötlet teljesítményi okokból):
relative
csak az egyik a position
tulajdonság hat értékéből . Itt vannak a többiek:
Értékek
static
: alapértelmezés szerint minden elemnek statikus pozíciója van, ezért az elem ragaszkodni fog a normál oldalfolyamhoz. Tehát, ha van egy bal / jobb / felső / alsó / z-index készlet, akkor nincs hatással az elemre.relative
: egy elem eredeti helyzete azstatic
értékhez hasonlóan a dokumentum folyamatában marad . De most a bal / jobb / felső / alsó / z-index működni fog. A helyzeti tulajdonságok az elemet az eredeti helyzetből „tolják el” ebben az irányban.absolute
: az elem eltávolításra kerül a dokumentum folyamatából, és más elemek úgy fognak viselkedni, mintha ott sem lenne, miközben az összes többi helyzeti tulajdonság működni fog rajta.fixed
: az elem eltávolításra kerül a dokumentum folyamatából, mint az abszolút helyzetben lévő elemek. Valójában szinte ugyanúgy viselkednek, csak a rögzítetten elhelyezett elemek viszonyulnak mindig a dokumentumhoz, nem egy adott szülőhöz, és a görgetés nem érinti őket.sticky
(kísérleti): az elemet úgy kezeljük, mint egyrelative
értéket, amíg a nézet görgetési helye el nem éri a megadott küszöbértéket, ekkor az elem olyanfixed
helyzetbe kerül, ahol azt mondják, hogy ragaszkodjon hozzá.inherit
: azposition
érték nem lép fel kaszkádon, így ez arra használható, hogy kifejezetten rá kényszerítse, ésinherit
a pozícionálási értéket a szülőjétől.
Abszolút
Ha egy gyermekelemnek van absolute
értéke, akkor a szülőelem úgy fog viselkedni, mintha a gyermek egyáltalán nincs ott:
.element ( position: absolute; )
És amikor megpróbálunk más értékeket beállítani, például left
,, bottom
és right
azt tapasztaljuk, hogy a gyermek elem nem a szülő méreteire reagál, hanem a dokumentumra:
.element ( position: absolute; left: 0; right: 0; bottom: 0; )
Ahhoz, hogy a gyermek elem abszolút a szülő elemétől legyen pozicionálva, ezt magának a szülő elemnek kell beállítanunk:
.parent ( position: relative; )
Most tulajdonságok, mint például left
, right
, bottom
és top
akkor nézze meg a szülő elem, hogy ha teszünk a gyermek elem átlátszó látjuk, hogy ül az alján a szülő:
Rögzített
Az fixed
érték hasonló ahhoz absolute
, mivel segíthet egy elem bárhol történő elhelyezésében a dokumentumhoz képest, azonban a görgetés ezt az értéket nem befolyásolja. Nézze meg a gyermek elemet az alábbi bemutatóban, és hogyan gördül tovább az oldal aljára:
Ez a böngésző támogatási adat a Caniuse cégtől származik, amely részletesebben szerepel. Egy szám azt jelzi, hogy a böngésző támogatja az adott és újabb verziók szolgáltatásait.
Asztal
Króm | Firefox | AZAZ | Él | Szafari |
---|---|---|---|---|
4 | 2 | 7 | 12. | 3.1 |
Mobil / Tablet
Android Chrome | Android Firefox | Android | iOS Safari |
---|---|---|---|
88 | 85 | 3 | 8. |
Ragadós
Az sticky
érték olyan, mint egy kompromisszum az relative
és az fixed
értékek között. Az írástól kezdve jelenleg kísérleti érték, vagyis nem része a hivatalos specifikációnak, és csak bizonyos böngészők fogadják el. Más szavakkal, valószínűleg nem a legjobb ötlet, hogy ezt élő produkciós weboldalon használják.
Mit csinal? Nos, ez lehetővé teszi, hogy egy elemet a dokumentumban lévő bármelyihez viszonyítva pozícionáljon, majd miután a felhasználó átgördült a nézetablak egy bizonyos pontján, rögzítse az elem pozícióját erre a helyre, hogy az állandóan megjelenjen, mint egy elem egy fixed
érték.
Vegyük a következő példát:
.element ( position: sticky; top: 50px; )
Az elem viszonylag addig helyezkedik el, amíg a nézetablak görgetési helye el nem éri azt a pontot, ahol az elem 50px
a nézetablak tetejétől lesz . Ezen a ponton az elem ragadóssá válik, és továbbra is a fixed
pozíció 50px
a képernyő tetején.
A következő bemutató szemlélteti azt a pontot, ahol a felső navigáció az alapértelmezett relative
helymeghatározás, a második navigáció pedig sticky
a nézetablak legtetején van beállítva . Felhívjuk figyelmét, hogy a bemutató csak a Chrome-ban, a Safari-ban és az Operában fog működni az írás idején.
Ez a böngésző támogatási adat a Caniuse cégtől származik, amely részletesebben szerepel. Egy szám azt jelzi, hogy a böngésző támogatja az adott és újabb verziók szolgáltatásait.
Asztal
Króm | Firefox | AZAZ | Él | Szafari |
---|---|---|---|---|
91. | 59 | Nem | 88 | 7,1 * |
Mobil / Tablet
Android Chrome | Android Firefox | Android | iOS Safari |
---|---|---|---|
88 | 85 | 81. | 8 * |