position
Ominaisuus voi auttaa manipuloida sijainti elementin, esimerkiksi:
.element ( position: relative; top: 20px; )
Alkuperäiseen sijaintiinsa nähden yllä oleva elementti työntyy nyt ylhäältä alas 20 kuvapistettä. Jos animoisimme nämä ominaisuudet, voimme nähdä, kuinka paljon hallintaa tämä antaa meille (vaikka tämä ei ole hyvä idea suorituskyvyn vuoksi):
relative
on vain yksi ominaisuuden kuudesta arvosta position
. Tässä ovat muut:
Arvot
static
: jokaisella elementillä on oletusarvoisesti staattinen sijainti, joten elementti pysyy normaalissa sivuvirrassa. Joten jos vasen / oikea / ylä / ala / z-indeksi on asetettu, tälle elementille ei ole vaikutusta.relative
: elementin alkuperäinen sijainti pysyy asiakirjan kulussa aivan kutenstatic
arvo. Mutta nyt vasen / oikea / ylä / ala / z-indeksi toimii. Paikoitusominaisuudet "työntävät" elementtiä alkuperäisestä sijainnista siihen suuntaan.absolute
: elementti poistetaan asiakirjan kulusta ja muut elementit käyttäytyvät ikään kuin sitä ei olisi edes siellä, kun taas kaikki muut sijaintiominaisuudet toimivat sillä.fixed
: elementti poistetaan asiakirjan kulusta aivan ehdottomasti sijoitettujen elementtien tapaan. Itse asiassa ne käyttäytyvät melkein samalla tavalla, vain kiinteät sijoitetut elementit ovat aina suhteessa asiakirjaan, ei mitään tiettyä vanhempaa, ja vieritys ei vaikuta niihin.sticky
(kokeellinen): elementtiä käsitelläänrelative
arvona, kunnes näkymän vierityspaikka saavuttaa määritetyn kynnyksen, jolloin elementti ottaafixed
paikan, jossa sen käsketään kiinni.inherit
:position
arvo ei pääse kaskadiin, joten sitä voidaan käyttää pakottamaan se nimenomaan jainherit
sen sijainti-arvo sen vanhemmalta.
Ehdottomasti
Jos lapsielementillä on absolute
arvo, ylätason elementti käyttäytyy ikään kuin lasta ei olisi ollenkaan:
.element ( position: absolute; )
Ja kun yritämme asettaa muita arvoja, kuten left
, bottom
ja right
huomaamme, että lapsielementti ei vastaa vanhemmansa, vaan asiakirjan mittoihin:
.element ( position: absolute; left: 0; right: 0; bottom: 0; )
Jotta lapsielementti sijoitettaisiin ehdottomasti vanhemmasta elementistä, meidän on asetettava tämä itse pääelementille:
.parent ( position: relative; )
Nyt ominaisuudet kuten left
, right
, bottom
ja top
viittaavat emoelementin, joten jos teemme alielementtiin läpinäkyvä voimme nähdä sen istuu alareunassa vanhemman:
Kiinteä
fixed
Arvo on samanlainen absolute
kuin se voi auttaa sinua sijoittaa elementin missään suhteessa asiakirjan, mutta tämä arvo ei vaikuta rullata. Katso alielementti alla olevasta esittelystä ja kuinka se vierittämisen jälkeen pysyy edelleen sivun alaosassa:
Nämä selaintukitiedot ovat Caniuselta, jolla on tarkempia tietoja. Numero osoittaa, että selain tukee ominaisuutta kyseisessä versiossa tai uudemmassa.
Työpöytä
Kromi | Firefox | IE | Reuna | Safari |
---|---|---|---|---|
4 | 2 | 7 | 12 | 3.1 |
Matkapuhelin / tabletti
Android Chrome | Android Firefox | Android | iOS Safari |
---|---|---|---|
88 | 85 | 3 | 8 |
Tahmea
sticky
Arvo on kuin kompromissi relative
ja fixed
arvoja. Tämän kirjoituksen jälkeen se on tällä hetkellä kokeellinen arvo, mikä tarkoittaa, että se ei ole osa virallista spesifikaatiota ja vain osittain valittujen selainten hyväksymä. Toisin sanoen, ei todennäköisesti ole paras idea käyttää tätä live-tuotantosivustolla.
Mitä se tekee? No, sen avulla voit sijoittaa elementin suhteessa mihin tahansa asiakirjassa ja sitten, kun käyttäjä on vierittänyt tietyn pisteen ohitse näkymäikkunassa, korjaa elementin sijainti tähän paikkaan, jotta se pysyy jatkuvasti näytettynä kuin elementti, jossa on fixed
arvo.
Ota seuraava esimerkki:
.element ( position: sticky; top: 50px; )
Elementti on suhteellisen sijoitettu, kunnes näkymäikkunan vierityspaikka saavuttaa pisteen, jossa elementti tulee 50px
näkymän yläosasta. Tässä vaiheessa, elementti tulee tahmeaksi ja pysyy liikkumattomana fixed
asennossa 50px
näytön yläreunassa.
Seuraava esittely kuvaa sitä kohtaa, jossa ylinavigointi on oletussijainti relative
ja toinen navigointi on asetettu sticky
näkymän yläosaan. Huomaa, että esittely toimii vain Chromessa, Safarissa ja Operassa tämän kirjoituksen aikana.
Nämä selaintukitiedot ovat Caniuselta, jolla on tarkempia tietoja. Numero osoittaa, että selain tukee ominaisuutta kyseisessä versiossa tai uudemmassa.
Työpöytä
Kromi | Firefox | IE | Reuna | Safari |
---|---|---|---|---|
91 | 59 | Ei | 88 | 7,1 * |
Matkapuhelin / tabletti
Android Chrome | Android Firefox | Android | iOS Safari |
---|---|---|---|
88 | 85 | 81 | 8 * |
Lisää tietoa
Video 25. helmikuuta 2015# 110: Nopea yleiskatsaus CSS-sijaintiarvoihin
▶ Ajoaika: 13:34 sijainti











