Maison > interface Web > tutoriel CSS > Comment puis-je effacer efficacement les flotteurs dans le CSS moderne sans balisage supplémentaire ?

Comment puis-je effacer efficacement les flotteurs dans le CSS moderne sans balisage supplémentaire ?

DDD
Libérer: 2024-12-02 17:32:14
original
493 Les gens l'ont consulté

How Can I Efficiently Clear Floats in Modern CSS Without Extra Markup?

Meilleures pratiques pour effacer les flotteurs dans les CSS modernes

Dans le domaine du CSS, la suppression des flotteurs a été un défi persistant, avec l'émergence de diverses techniques au fil des années. Bien que l'utilisation de
> est une approche courante, elle introduit un balisage HTML inutile. Le CSS moderne offre des solutions plus élégantes et efficaces à ce problème.

Approche des pseudo-éléments :

En 2014, la technique privilégiée consiste à utiliser des pseudo-éléments pour créer un clearfix. Cela implique d'ajouter les styles suivants au conteneur parent des éléments flottants :

.cf:before,
.cf:after {
  content: " ";
  display: table;
}

.cf:after {
  clear: both;
}
Copier après la connexion

Cette méthode est efficace dans tous les navigateurs modernes et évite le besoin d'éléments HTML supplémentaires.

Propriété de débordement :

Une autre solution multi-navigateurs consiste à définir la propriété de débordement du conteneur parent sur masqué ou automatique. Cela a pour effet de dégager les flotteurs à l'intérieur du conteneur, sans nécessiter de balisage supplémentaire :

.container {
  overflow: hidden;
}
Copier après la connexion

Micro Clearfix :

Pour une approche encore plus minimale, Nicholas Gallagher a proposé une technique de micro clearfix :

.cf {
  zoom: 1;
}
.cf:before,
.cf:after {
  display: table;
}

.cf:after {
  clear: both;
}
Copier après la connexion

Cette technique combine la propriété de débordement avec des pseudo-éléments pour obtenir le même résultat que le technique clearfix mentionnée précédemment.

Éviter les hacks JavaScript :

Il est conseillé d'éviter d'utiliser des hacks JavaScript à cette fin. JavaScript peut avoir différents niveaux de prise en charge dans différents navigateurs, et il peut ne pas toujours être disponible ou activé en cas de besoin. Par conséquent, il est plus fiable d'utiliser des solutions basées sur CSS pour la compatibilité entre navigateurs.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal