![]() |
![]() Il sito per imparare gratuitamente a fare pagine web. |
|
Guida XHTML - Ver. 1.1.7 - Settembre 2008 Ver. 0.1 - Anno 2005
Posizionare il Box Model. blocco 1 inserito nel normale flusso
blocco 2 inserito subito dopo l'istruzione per il blocco 1
blocco 3 inserito subito dopo l'istruzione per il blocco 2
Notate come i blocchi inseriti nella pagina seguendo il flusso naturale del codice disponendosi verticalmente pur non avendo inserito alcun ritorno a capo e questo perchè il tag <div> come tutti gli elementi di blocco provoca automaticamente un ritorno a capo. blocco 1 con margin inserito nel normale flusso
blocco 2 con margin inserito subito dopo l'istruzione per il blocco 1
blocco 3 con margin inserito subito dopo l'istruzione per il blocco 2
questo il codice per definirlo nel foglio di style CSS.
#box1 { width: 400px; height: 20px; border: solid 1px; margin: 5px; color: black; background-color: #ffff99; } Il codice si riferisce al box1 ma la definizione per gli altri due box è praticamente la stessa, varia soltanto per il nome: #box2 e #box3 ed il relativo colore di sfondo: background-color. blocco 1 con margin auto inserito nel normale flusso
Da notare che per avere un bordo nel foglio di style non basta specificare il solo spessore (1px), si deve specificare anche un possibile attributo che identifica il tipo, in questo caso solid o il bordo non sarà visibile.
<div id="box1">blocco 1 con margin inserito... </div> <div id="box2">blocco 2 con margin inserito... </div> <div id="box3">blocco 3 con margin inserito... </div> Quando il contenuto del box supera le sue dimensioni, per esempio inserendo un'immagine più larga, si hanno comportamenti differenti a seconda del tipo di browser, tanto per cambiare ognuno di questi interpreta a modo suo. Alcuni allargano il box per adattarlo alla dimensione del suo contenuto, altri fanno uscire l'immagine dal box. ![]() overflow visible: predefinito, interpretato in modo differente dai vari browser. ![]() overflow hidden: nascondi le barre e taglia l'immagine alle dimensioni del blocco. ![]() overflow auto: taglia l'immagine ed inserisci soltanto le barre di scorrimento necessarie. ![]() overflow scroll: taglia l'immagine ed inserisci entrambe le barre di scorrimento anche se non necessarie. relative è il posizionamento modificato rispetto alla posizione predefinita, praticamente un offset che consente di spostare il box rispetto alla sua naturale origine senza che questo spostamento incida o alteri il posizionamento degli altri elementi (oggetti) facenti parte della stessa pagina. blocco 1 con margin inserito nel normale flusso
blocco 2 position relative 12 px top e 20 px left
blocco 3 con margin inserito subito dopo l'istruzione per il blocco 2
Notate come il blocco 2 sia spostato di 12 pixel a partire dall'alto e di 20 pixel a partire dalla sinistra rispetto alla sua posizione naturale senza che gli altri due box subiscano alcuna variazione di posizione, questo perché position relative agisce solo sul box che ne fa uso senza alterare il normale flusso. E' possibile specificare la posizione relative usando gli attributi top, left, bottom e right rispettivamente per posizionarlo a partire dall'alto, da sinistra, dal basso e da destra. Sono ammessi anche numeri negativi che posizionerebbero il blocco in direzione contraria da quella dei numeri positivi.
#box2 { position: relative; top: 12px; left: 20px; width: 450px; height: 20px; border: solid 1px; margin: 5px; color: black; background-color: #ffccff; } A questo punto il blocco 2 risulta sovrapposto al blocco 3 oscurandolo in parte, è possibile stabilire l'ordine di sovrapposizione con la proprietà z-index che accetta solo valori numerici positivi, il numero più alto è quello in primo piano e copre il numero più basso. blocco 1 con margin inserito nel normale flusso
blocco 2 position relative 12 px top e 20 px left
blocco 3 con z-index superiore al blocco 2
Adesso il blocco 3 risulta sovrapposto al blocco 2 perchè ha un valore z-index di 1 che è superiore al valore dello z-index (di default impostato a 0) del blocco 2.
#box3 { position: relative; z-index: 1; width: 450px; height: 20px; border: solid 1px; margin: 5px; color: black; background-color: #ccffff; }
absolute è il posizionamento assoluto cioè è possibile posizionare il blocco in un qualsiasi punto della pagina, a differenza del posizionamento relativo che abbiamo visto non alterava gli altri oggetti pur condizionandoli con la sua presenza, absolute farà in modo che il blocco così definito risulti come se non facesse parte della pagina, praticamente non inciderà in alcun modo con gli altri oggetti, una specie di sovrapposizione alla pagina stessa. |
||
Andrea Bianchi |
||
| Sito di riferimento: www.Web-Link.it Forum di riferimento: www.ilmioforum.com | ||