clear
Come hai potuto constatare poco fa’, esiste una proprietà particolare che ti permette di risolvere l’inconveniente legato all’utilizzare float
, e cioè clear
.
Come suggerisce la parola, clear
va a “pulire” gli elementi float
e ristabilisce il normale flusso di esecuzione. Ossia, va a ristabilire le normali dimensioni degli elementi.
Anche i valori di clear
sono molto simili a float
:
left
; “pulisce” solo gli elementi che sono stati impostati comefloat:left
;right
; “pulisce” solo gli elementi che sono stati impostati comefloat:right
;both
; “pulisce” tutti gli elementifloat
.
Riprendo l’esempio di prima e ci aggiungo un clear
:
In questo modo, quindi, #content
prenderà nuovamente le dimensioni del più alto dei due elementi contenuti.
L’elemento che ha la proprietà clear
deve essere necessariamente consecutivo agli elementi con proprietà float
. Se tu l’avessi messo al di fuori di #content
, molto probabilmente il suo elemento consecutivo (nel caso ce ne fosse) sarebbe risultato in posizione corretta, ma l’altezza di #content
sarebbe rimasta a 0.
Ricorda che la proprietà clear
funziona esclusivamente sui tipi block
: sugli inline
non ha nessun effetto! Devi quindi usare sempre dei <div>
, o comunque degli elementi block
? Assolutamente no, e ti prego anche di non utilizzare dei <div>
vuoti in questo modo: esiste un’elemento neutro in HTML che è lo <span>
, ma che tuttavia è di tipo inline
… come fare allora? Nella prossima parte vedremo come trasformare una tipologia in un’altra.