A top
, bottom
, left
, és a right
tulajdonságokat használjuk a helyzetben, hogy állítsa be az elhelyezés egy elem. Csak azokra a pozicionált elemekre vannak hatással, amelyek olyan position
tulajdonságúak, hogy a tulajdonság minden másra van beállítva static
. Például: relative
, absolute
, fixed
, vagy sticky
.
div ( : || || auto || inherit; )
Használhatja például egy ikon helyére tolására:
button .icon ( position: relative; top: 1px; )
Vagy helyezzen egy speciális elemet a tartály belsejébe.
.container ( position: relative; ) .container header ( position: absolute; top: 0; )
Az érték top
, bottom
, left
és right
bármelyik lehet az alábbi:
- a CSS érvényes hosszainak bármelyike
- a tartalmazó elem magasságának (for
top
ésbottom
) vagy szélességének (forleft
andright
) százalékos aránya auto
inherit
Az elem általában elmozdul egy adott oldalról, ha az értéke pozitív, és felé, amikor az érték negatív. Az alábbi példában top
az elem pozitív hossza lefelé (felülről), a negatív hossza pedig top
felfelé (a teteje felé):
Lásd a Pen
Top: pozitív és negatív értékeket Matsuko Friedland (@missmatsuko)
a CodePen-en.
Pozíció
Az elhelyezés egy elem egy értéket top
, bottom
, left
vagy right
attól függ, hogy az ár-érték position
. Vizsgáljuk meg, mi történik, ha ugyanazt az értéket állítjuk be a top
különböző értékű elemekre position
.
static
A top
tulajdonság nincs hatással a nem pozícionált elemekre (a elemre position
állítva static
). Az elemek alapértelmezés szerint így vannak elhelyezve. Lehet használni position: static;
, mint egy módszer, hogy vonja vissza a hatása top
egy elemet.
relative
Ha be top
van állítva egy elemre, amelynek position
értéke be van állítva relative
, akkor az elem felfelé vagy lefelé mozog az eredeti elhelyezéséhez képest a dokumentumban.
Lásd a toll
tetejét: Matsuko Friedland (@missmatsuko)
rokona a CodePen-en.
absolute
Ha be top
van állítva egy elemre, amelynek position
értéke be van állítva absolute
, akkor az elem felfelé vagy lefelé mozog a legközelebbi elhelyezett elődhöz (vagy a dokumentumhoz, ha nincsenek elhelyezkedő elődök).
Ebben a bemutatóban a bal oldali rózsaszín mező 50 képpontos távolságra van lefelé az oldal tetejétől, mert nincsenek elhelyezve az ősei. A rózsaszín doboz a jobb oldalon helyezkedik el 50px le a tetejét a szülő, mert a szülőnek position
a relative
.
Lásd a Toll
tetejét: abszolút: Matsuko Friedland (@missmatsuko)
a CodePen-en.
fixed
Ha be top
van állítva egy elemre, amelynek position
értéke be van állítva fixed
, akkor az elem felfelé vagy lefelé mozog a böngésző nézetablakához képest.
Lásd a Toll tetejét
: CSS-Tricks (@ css-tricks)
javította a CodePen-en.
Első pillantásra úgy tűnhet, hogy nincs különbség a absolute
és között fixed
. A különbség akkor látható, ha összehasonlítja őket egy olyan oldalon, amelynek elegendő tartalma van a görgetéshez. Lefelé görgetve a fixed
pozícióelem mindig látható, míg a absolute
pozícióelem elgördül.
Lásd a
Tollgörgetés: fix vagy abszolút CSS-trükkök (@ css-tricks) segítségével
a CodePen-en.
sticky
Ha be top
van állítva egy elemre, amelynek position
értéke be van állítva sticky
, akkor az elem felfelé vagy lefelé mozog a legközelebbi elődhöz képest egy gördülődobozzal (vagy a nézetablakkal, ha egyik ősnek sincs gördítődoboza), korlátozva az elemet tartalmazó határokra.
Beállítása top
egy sticky
elhelyezett elem nem sokat, hacsak a konténer magasabb, mint ez, és van elegendő tartalom tekercset. Az fixed
elemhez hasonlóan görgetés közben is látható marad az elem. Ellentétben fixed
az elem kiesik a látótérből, amint eléri a benne lévő elem széleit.
Lásd a Pen
Scrolling: fix vs sticky CSS-Tricks (@ css-tricks)
által a CodePen-en.
Gotchas
Ellenkező oldalak beállítása
Akkor meg egy értéket az egyes top
, bottom
, left
és right
egyetlen elem. Ha az ellentétes oldalak ( top
és bottom
, vagy left
és és right
) értékeit állítja be , akkor az eredmény nem mindig megfelelő.
A legtöbb esetben bottom
figyelmen kívül hagyja, ha top
már be van állítva, és right
figyelmen kívül hagyja, ha left
már be van állítva. Ha az irány rtl
(jobbról balra) van állítva , left
akkor a rendszer figyelmen kívül hagyja right
. Annak érdekében, hogy az egyes értékek hatással lehessenek, az elemnek position
állítania kell a absolute
vagy értéket fixed
és a height
beállítást auto
(alapértelmezett).
Ebben a példában mi meg top
, bottom
, left
és right
a `20px`, és elvárják, mindkét oldalán a belső dobozt, hogy 20px el az oldalán a külső doboz:
Tekintse meg a
CSS-Tricks (@ css-tricks)
által a CodePen tetején, alján, balján és jobbján található tollbeállítást.
Ha javítva van, az nem viszonyul a nézetablakhoz
Elemek position
halmaza, hogy fixed
nem mindig viszonyított pozícióját az ablakon. Ez lesz pozícionálva legközelebbi őse egy transform
, perspective
vagy filter
tulajdonság értéke semmi más, mint none
, ha létezik ilyen.
Hely hozzáadása vagy eltávolítása
Ha elhelyezett egy elemet, és úgy találta, hogy van egy üres hely vagy nincs elegendő hely a vártnál, akkor annak köze lehet ahhoz, hogy az elem be van-e vezetve a dokumentum folyamatába vagy sem.
Ha egy elem kivonásra kerül a dokumentum folyamatából, az azt jelenti, hogy az eredetileg az oldalon elfoglalt hely eltűnik. Ez akkor áll fenn, amikor egy elemet absolute
vagy fixed
. Ebben a példában az abszolút helyzetben lévő elem tartalmazó doboza összeomlott, mert az abszolút helyzetben lévő elemet eltávolították a dokumentum folyamatából:
Lásd
Matsuko Friedland (@missmatsuko)
tolldokumentum-folyamatát a CodePen-en.
Böngésző támogatás
Kukucskálhat, de nincsenek böngészőkön átnyúló aggályai az top
ingatlannal kapcsolatban. Használja tetszés szerint.