Il existe deux méthodes "nouvelle école". L'un est débordement et l'autre est clearfix.
nouvelle école # 1:
#el {
overflow:hidden;
zoom:1;
}
Une valeur de quoi que ce soit, mais visible
à débordement crée un nouveau contexte de mise en forme de bloc qui provoque flotte seront automatiquement effacées.
nouvelle école # 2:
#el:after {
content:"";
clear:both;
display:block;
}
#el { zoom:1; }
Le clearfix génère essentiellement un des espaces invisibles « élément » qui est au niveau du bloc et efface la zone après l'élément. C'est un remplacement CSS pour l'insertion d'un div vierge qui efface pour vous.
Si vous avez besoin d'un élément qui dépasse les limites, utilisez # 2. Sinon, utilisez # 1. Le zoom
déclenche hasLayout, et fait en sorte que el contienne des flottants dans pre IE7. IE7 + comprend le overflow:hidden
. Comme l'a souligné Grillz, content: "\0020";
est en fait la valeur de propriété la plus récente et la plus récente pour le clearfix si vous suivez cette route. Il y a un bogue de rendu qui se produit en ce qui concerne les espaces qui peuvent être résolus en spécifiant qu'à la place d'un point, d'une chaîne vide ou d'une chaîne d'espace.
ce fil devrait aider: http://stackoverflow.com/questions/211383/which-method-of-clearfix-is-best –
@Grillz - cette réponse sélectionnée est obsolète et très mauvaise pratique. –