Wpływanie na pozycję elementu: position
Z pomocą CSS możemy wpływać na położenie elementów (czyli ich pozycję na ekranie względem wybranego układu odniesienia), z użyciem "ustawiających" właściwości: left
, right
, top
, bottom
- na przykład:
.jeden
{
position: absolute;
left: 5%;
top: 25px;
}
.dwa
{
position: absolute;
right: 10%;
bottom: 50px;
}
Przyjrzyjmy się jednak przede wszystkim dostępnym rodzajom pozycjonowania elementów:
Pozycja statyczna
position: static;
Domyślna wartość position to static
- pozycja statyczna. Przy takim ustawieniu właściwości left
, right
, top
czy bottom
są ignorowane - w ogóle nie będą działać! Dopiero jeżeli ustawimy pozycję relative
, absolute
albo fixed
to właściwości left
, right
, top
, bottom
zadziałają:
.jeden
{
position: static; // wartość domyślna, więc i tak obowiązuje
left: 5%; // nie zadziała dla pozycji statycznej!
top: 25px; // nie zadziała dla pozycji statycznej!
}
.dwa
{
position: absolute;
right: 10%; //pozycja inna niż static - zadziała!
bottom: 50px; //pozycja inna niż static - zadziała!
}
Pozycja relatywna
position: relative;
Stosując pozycjonowanie relatywne elementu pozostawiamy przewidziane dla niego miejsce w tzw. flow witryny (miejsce to staje się jednocześnie nowym układem odniesienia dla elementu), po czym aplikujemy nowe położenie (określone właściwościami left
, right
, top
lub bottom
). W strukturze witryny zawsze pozostaje "wyrwa" w miejscu sprzed przemieszczenia.
Pozycja absolutna
position: absolute;
Stosując pozycjonowanie absolutne elementu nie pozostawiamy przewidzianego dla niego miejsca we flow witryny (nowym układem odniesienia staje się lewy górny narożnik płótna przeglądarki, no chyba że element pozycjonowany absolutnie znajduje się wewnątrz pojemnika pozycjonowanego relatywnie), po czym aplikujemy nowe położenie (określone właściwościami left
, right
, top
lub bottom
). W strukturze witryny nie pozostaje żadna "wyrwa" w miejscu przewidzianym pierwotnie we flow witryny (element zostaje całkowicie z tego flow wyjęty).
Pozycja ustalona
position: fixed;
Podobnie jak w pozycjonowaniu absolutnym nie pozostawiamy we flow witryny miejsca przewidzianego na element, natomiast różnica polega na tym, iż pozycja określona przez współrzędne left
, right
, top
lub bottom
utrzymuje się także przy przewijaniu dokumentu (w praktyce położenie – jak to mówimy – "ustala się" permamentnie.
Podobnie jak w pozycjonowaniu absolutnym nie pozostawiamy we flow witryny miejsca przewidzianego na element, natomiast różnica polega na tym, iż pozycja określona przez współrzędne left
, right
, top
lub bottom
utrzymuje się także przy przewijaniu dokumentu (w praktyce położenie – jak to mówimy – "ustala się" permamentnie.
Więcej informacji na temat różnych sposobów pozycjonowania znajdziesz także w tym odcinku kursu video (tak naprawdę artykuł niniejszy stanowi pomocne notatki do tegoż video).
Komentarze