I dettagli oscuri del posizionamento assoluto
Martedì 8 Settembre 2009 - 08:15
di Gabriele Romanato

Nato dalle ceneri del modello a layer di Netscape 4, il posizionamento assoluto non è mai decollato tra i metodi preferiti per costruire un layout con i CSS. Il tutto è dovuto ad alcuni dettagli oscuri che ne impediscono il diffondersi tra gli sviluppatori. Eccone alcuni.
Sovrapposizione con elementi statici
Un elemento posizionato in modo assoluto può sovrapporsi ad altri elementi, poiché viene completamente rimosso dal flusso normale del documento. Il problema è che non esiste una proprietà che regoli questa sovrapposizione. Lo z-index, infatti, opera quando gli elementi sono già sovrapposti, non quando gli elementi non sono sovrapposti o potrebbero sovrapporsi. Di norma occorre specificare determinate regole di stile per gli elementi che andranno ad incontrare un elemento posizionato in modo assoluto. In realtà, sarebbe più comodo operare sull’elemento posizionato, non sugli altri elementi del flusso.
Il valore ‘auto’ della proprietà ‘top’
Un elemento posizionato in modo assoluto che segue un elemento statico nel flusso andrà a posizionarsi esattamente sotto l’elemento statico se e solo se il valore della sua proprietà top è impostato su auto. Il problema è che questa caratteristica si applica solo alla proprietà top, rendendo di fatto difficile scrivere una regola di stile che, per esempio, riesca a posizionare un footer esattamente sotto tre colonne posizionate in modo assoluto.
Clear degli elementi posizionati in modo assoluto
Ad oggi non esiste un modo per regolare il posizionamento esatto degli elementi che seguono uno o più elementi posizionati (come per esempio in un layout multicolonna). Di fatto si è costretti a ricorrere a soluzioni come questa per ottenere l’effetto desiderato. Sarebbe opportuno creare una proprietà a tale scopo, ma per il momento non sembrano esserci proposte concrete in tal senso.
Concludendo, le cause della difficoltà nell’uso del posizionamento assoluto sono da imputarsi più al modello proposto che non ad una mancanza di volontà da parte degli sviluppatori.
Commenti
1
il posizionamento assoluto resta un’ancora di salvezza per i salti mortali ma realizzare un intero layout con questa tecnica, anche per i motivi descritti sopra, è molto difficile…
Personalmente mi piace ma cerco di utilizzarlo con parsimonia e solo per elementi che si possano considerare veramente “fuori” dal flusso della pagina…
2
Il problema dei CSS, il loro peccato originale, è che paiono pensati non per i siti Web ma per il desktop publishing!
# - postato da gianluca - 08 Settembre 2009 - 11:42
3
Penso che più che per i motivi riportati nel post (che mi sembrano palesi: va da sè che il sovrapporsi agli altri elementi è una caratteristica del posizionamento assoluto), il motivo per cui questo tipo di posizionamento non mai decollato tra i metodi per costruire un layout CSS sia da ricercarsi nelle sue caratteristiche intrinseche, ossia nell’essere… assoluto, per l’appunto.
Quindi (ma mi sembar banale ricordarlo) implica che il designer sappia già quali saranno gli ingombri che l’elemento (e quelli che lo circondano) avrà, cosa che nei “normali” siti è impossibile.Infatti l’utilizzo primario del posizionamento assoluto è per elementi secondari in relazione all’elemento contenitore (position:absolute all’interno di un position:relative). O no?
# - postato da idrolitina - 08 Settembre 2009 - 11:42
4
Infatti l’utilizzo primario del posizionamento assoluto è per elementi secondari in relazione all’elemento contenitore (position:absolute all’interno di un position:relative). O no?
non so se è l’utilizzo primario… ma usato così permette ottime soluzioni…
Il problema dei CSS, il loro peccato originale, è che paiono pensati non per i siti Web
detta così forse è eccessiva, ma di sicuro i css non hanno regole AD HOC per la costruzione di un layout, anche il float da quanto ne so io nasce per posizionare ELEMENTI in relazione ai contenuti testuali (o non) che gli stanno vicini, non per posizionare CONTENITORI come invece facciamo quando costruiamo una pagina…
5
@Gianluca
Concordo in pieno. Infatti Håkon Wium Lie ha un background in desktop publishing (vedi la sua tesi di laurea). ;-)# - postato da Gabriele Romanato - 09 Settembre 2009 - 05:10
6
@Gabriele
“Il risultato è un documento che sono orgoglioso di presentare.”/clap !!!
Credo che prenderò molta inspirazione sai…
# - postato da Roy - 09 Settembre 2009 - 08:06
7
@Roy
è stata una faticaccia, ma Hakon lo merita! ;-)
# - postato da Gabriele Romanato - 09 Settembre 2009 - 13:29







