El posicionament CSS ha estat durant molt de temps una part important de la creació de dissenys de llocs web. Fins i tot amb l'augment de les tècniques de disseny de CSS, com Flexbox i CSS Grid, el posicionament continua tenint un lloc important en la borsa de trucs de qualsevol dissenyador web.
Quan utilitzeu el posicionament CSS, el primer que heu de fer és establir la propietat CSS per indicar-li al navegador si usareu el posicionament absolut o relatiu d'un determinat element. També heu d'entendre la diferència entre aquestes dues propietats de posicionament.
Tot i que són absolutes i relatives les dues propietats de posició CSS més utilitzades en el disseny web, en realitat hi ha quatre estats a la propietat de posició:
- estàtic
- absolut
- familiar
- fix
Posicionament estàtic
Static és la posició predeterminada per a qualsevol element d'una pàgina web. Si no defineix la posició d'un element, és estàtic, el que significa que es mostra a la pantalla segons el lloc on es troba el document HTML i com es mostra dins del flux normal d'aquest document.
Si apliqueu regles de posicionament com ara superior o esquerra a un element que té una posició estàtica, aquestes regles s'ignoren, i l'element roman on apareix en el flux de documents normal. Rarament, si cal, heu d'establir un element a una posició estàtica a CSS perquè és el valor predeterminat.
Absoluta CSS Posicionament
El posicionament absolut és probablement la posició CSS més fàcil d'entendre. Comenceu amb aquesta propietat de posició CSS:
posició: absoluta;
Aquest valor indica al navegador que tot allò que es va a ubicar s'haurà de treure del flux normal del document i, en lloc d'això, situar-se en una ubicació exacta a la pàgina. Això es calcula a partir de l'avantpassat més proper que no estàticament posicionat d'aquest element. Com que un element absolutament posicionat es treu del flux normal del document, afecta com els elements abans o després del codi HTML es col·loquen a la pàgina web. Com a exemple, si teniu una divisió que es posiciona usant un valor de relatiu i dins d'aquesta divisió, teniu un paràgraf que voleu situar 50 píxels des de la part superior de la divisió, s'afegeix un valor de posició de absolut a aquest paràgraf juntament amb un valor de compensació de 50px a la superior propietat, així: posició: absoluta;top: 50 px;
Aquest element absolutament posicionat sempre mostra 50 píxels des de la part superior d'aquesta divisió relativament posicionada, independentment del que més es mostri en un flux normal. L'element absolutament posicionat utilitza la posició relativament posicionada com a context, i el valor de posicionament que utilitza és relatiu a això. Les quatre propietats de posicionament que teniu disponibles per utilitzar són: També podeu fer servir superior o fons - ja que un element no es pot ubicar d'acord amb aquests dos valors, i tampoc dret o esquerra. Si un element s'estableix en una posició d'absoluta, però no té ancestres posicionats de manera no estàtica, es posiciona en relació amb l'element del cos, que és l'element de nivell més alt de la pàgina. El posicionament relatiu utilitza les mateixes quatre propietats de posicionament que el posicionament absolut, però en comptes de basar la posició de l'element en el seu ancestro més proper posicionat no estàticament, comença des d'on l'element seria si encara estigui en el flux normal. Per exemple, si teniu tres paràgrafs a la vostra pàgina web i la tercera té un posició: relativa estil posicionat en ell, la seva posició es compensa en funció de la seva ubicació actual. Paràgraf 1. Paràgraf 2. Paràgraf 3. A l'exemple anterior, el tercer paràgraf es posiciona a 2em del costat esquerre de l'element contenidor però encara per sota dels dos primers paràgrafs. Es manté en el flux normal del document i es compensa lleugerament. Si la canvieu posició: absoluta, tot seguit es mostra a la part superior, ja que ja no es troba en el flux normal del document. Els elements d'una pàgina web s'utilitzen sovint per establir un valor de posició: relativa sense establir cap valor de compensació, el que significa que l'element roman exactament on apareixeria en el flux normal. Això es fa únicament per establir aquest element com un context en què es poden situar de manera absoluta altres elements. Per exemple, si teniu una divisió que envolta tot el vostre lloc web amb un valor de classe contenidor, que és un escenari comú en el disseny web, aquesta divisió es pot establir en una posició familiar de manera que tot allò que hi hagi dins pugui usar-lo com a context de posicionament. El posicionament fix és molt semblant al posicionament absolut. La posició de l'element es calcula de la mateixa manera que el model absolut, però els elements fixos es fixen en aquesta ubicació, gairebé com una filigrana. Tot el que hi ha a la pàgina es desplaça darrere d'aquest element. Per utilitzar aquest valor de la propietat, definiu: posició: fixa;
Tingueu en compte que, quan arregla un element al seu lloc, s'imprimeix en aquesta ubicació quan s'imprimeixi la vostra pàgina web. Per exemple, si el vostre element està fixat a la part superior de la vostra pàgina, apareixerà a la part superior de cada pàgina impresa perquè està fixada a la part superior de la pàgina. Podeu utilitzar tipus de suports per canviar com les pàgines imprimides mostren elements fixos: pantalla @media { h1 # primer (posició: fixa; } } @media print { h1 # primer (posició: estàtic; } }
Posicionament relatiu
Què passa amb el posicionament fix?













