2010-11-17 7 views
2

Que signifie flotter à gauche, puis effacer à gauche. Ou flotter à gauche, puis effacer à droite? Quelqu'un peut-il m'aider à comprendre cela. Je ne suis pas un type CSS, mais j'ai besoin de comprendre certains des CSS avec lesquels je travaille.pourquoi flotter suivi de vide

#elem1{ 
    float:left; 
    clear:left; 
} 

#elem2{ 
    float:left; 
    clear:right; 
} 

Répondre

5

Si vous faites flotter deux éléments ensemble, ils s'aligneront sur le même axe horizontal si vous n'appliquez pas de suppression. En disant un élément flottant à effacer, il efface tous les flottants qui viennent avant, puis flotte lui-même là où le concepteur a l'intention de le faire flotter. Il ira sur une nouvelle ligne, ou non, en fonction de la direction du clair.

Voir ce jsFiddle example pour une visualisation. Les deux premiers <div> s n'effacent rien, tandis que les deux derniers <div> sont réglés pour effacer les flottants gauche et droit.

3

clear signifie de positionner l'élément en dessous de éléments flottants précédents, pour "effacer la ligne".

Habituellement éléments flottants s'empilent sur la même ligne comme celui-ci:

--- --- --- 
| | | | | | 
--- --- --- 

les Démontrant des éléments flottants précédents feront les arranger comme ceci:

--- 
| | 
--- 
--- 
| | 
--- 
--- 
| | 
---