Poziționarea CSS a fost mult timp o parte importantă în crearea layout-urilor site-ului. Chiar si cu cresterea tehnicilor de layout CSS, cum ar fi Flexbox si CSS Grid, pozitionarea are inca un loc important in orice plictisitor de web designer.
Când utilizați poziționarea CSS, primul lucru pe care trebuie să-l faceți este să stabiliți proprietatea CSS pentru a afla dacă doriți să utilizați poziționarea absolută sau relativă pentru un anumit element. De asemenea, trebuie să înțelegeți diferența dintre aceste două proprietăți de poziționare.
Deși absolută și relativă sunt cele două proprietăți de poziționare CSS utilizate cel mai des în designul web, există patru state la proprietatea de poziție:
- static
- absolut
- rudă
- fix
Poziționarea statică
Static este poziția prestabilită pentru orice element dintr-o pagină web. Dacă nu definiți poziția unui element, acesta este static, ceea ce înseamnă că acesta se afișează pe ecran în funcție de locul în care se află în documentul HTML și cum se afișează în fluxul normal al documentului respectiv.
Dacă aplicați reguli de poziționare, cum ar fi top sau stânga la un element care are o poziție statică, aceste reguli sunt ignorate, iar elementul rămâne acolo unde apare în fluxul normal de documente. Rareori, dacă vreodată, trebuie să setați un element într-o poziție statică în CSS, deoarece este valoarea implicită.
Poziționarea absolută a CSS
Poziția absolută este probabil cea mai ușoară poziție CSS de înțeles. Începeți cu această proprietate a poziției CSS:
poziția: absolută;
Această valoare indică browserului că orice va fi poziționat trebuie să fie eliminat din fluxul normal al documentului și plasat într-o locație exactă a paginii. Aceasta se calculează pe baza celui mai apropiat strămoș care nu este static. Deoarece un element absolut poziționat este scos din fluxul normal al documentului, acesta afectează modul în care elementele din fața sau după ele în HTML sunt poziționate pe pagina web. De exemplu, dacă aveți o diviziune poziționată utilizând o valoare relativă și în interiorul acelei diviziuni, aveți un paragraf pe care doriți să-l poziționați cu 50 de pixeli din partea superioară a diviziunii, adăugați o valoare a poziției absolut la paragraful respectiv, împreună cu o valoare de compensare 50px pe top proprietate, după cum urmează: poziția: absolută;top: 50px;
Acest element absolut poziționat afișează întotdeauna 50 de pixeli din partea de sus a acelei divizări relativ poziționate, indiferent de ce afișează altceva în fluxul normal. Elementul dvs. absolut poziționat folosește relativ poziționat ca context și valoarea de poziționare pe care o utilizați este relativă. Cele patru proprietăți de poziționare pe care le aveți disponibile pentru utilizare sunt: Puteți folosi oricare dintre ele top sau fund - deoarece un element nu poate fi poziționat în funcție de ambele valori - și nici unul dreapta sau stânga. Dacă un element este setat la o poziție absolută, dar nu are strămoși poziționați nestatal, atunci acesta este poziționat în raport cu elementul corpului, elementul cel mai înalt al paginii. Poziționarea relativă folosește aceleași patru proprietăți de poziționare ca poziționarea absolută, dar în loc să bazeze poziția elementului la cel mai apropiat strămoș poziționat nestatal, acesta pornește de unde ar fi elementul dacă ar fi încă în fluxul normal. De exemplu, dacă aveți trei paragrafe pe pagina dvs. Web, iar al treilea are a poziție: relativă stilul plasat pe acesta, poziția sa este compensată în funcție de locația sa actuală. Paragraful 1. Punctul 2. Punctul 3. În exemplul de mai sus, al treilea paragraf este poziționat de 2 mm față de partea stângă a elementului containerului, dar este încă sub primele două paragrafe. Rămâne în fluxul normal al documentului și este deplasat ușor. Dacă îl schimbați poziția: absolută, orice element care urmează este afișat pe acesta, deoarece nu mai este în fluxul normal al documentului. Elementele de pe o pagină Web sunt adesea folosite pentru a seta o valoare de poziție: relativă fără o valoare de compensare stabilită, ceea ce înseamnă că elementul rămâne exact unde ar apărea în flux normal. Acest lucru se face numai pentru a stabili acel element ca un context în care alte elemente pot fi poziționate absolut. De exemplu, dacă aveți o divizie care înconjoară întregul dvs. site cu o valoare a clasei recipient, care este un scenariu comun în designul web, această diviziune poate fi setată într-o poziție de rudă astfel încât orice element din interiorul acestuia să poată fi folosit ca un context de poziționare. Poziționarea fixă este foarte asemănătoare cu poziționarea absolută. Poziția elementului este calculată în același mod ca modelul absolut, însă elementele fixe sunt apoi fixate în acea locație - aproape ca un filigran. Orice altceva de pe pagină se deplasează după acel element. Pentru a utiliza această valoare a proprietății, setați: poziție: fixă;
Rețineți că, atunci când remediați un element pe site-ul dvs., acesta se imprimă în acea locație când pagina dvs. de imprimantă este imprimată. De exemplu, dacă elementul dvs. este fixat în partea de sus a paginii, acesta va apărea în partea de sus a fiecărei pagini imprimate, deoarece este fixat în partea de sus a paginii. Puteți utiliza tipurile de suporturi media pentru a schimba modul în care paginile imprimate afișează elemente fixe: Ecranul @media { h1 # primul {poziție: fix; } } @media print { h1 # primul {poziție: static; } }
Poziționarea relativă
Ce este despre poziționarea fixă?