Maison interface Web tutoriel HTML À propos du formatage au niveau du bloc en CSS

À propos du formatage au niveau du bloc en CSS

Feb 23, 2018 am 09:49 AM
css 格式

1.Définition de BFC

BFC (Contexte de formatage de bloc) est littéralement traduit par « contexte de formatage au niveau du bloc ». Il s'agit d'une zone de rendu indépendante, à laquelle participent uniquement les boîtes de niveau bloc (éléments de niveau bloc). Elle stipule comment la boîte interne de niveau bloc est disposée et n'a rien à voir avec l'extérieur de cette zone

En termes simples, il dit : L'élément qui a créé le BFC est une boîte indépendante. Les sous-éléments à l'intérieur n'affecteront pas la disposition des éléments extérieurs (cependant, la disposition à l'intérieur n'affectera pas l'extérieur), le BFC appartient toujours à l'ordinaire. flux dans le document


2. Génération de BFC :

Savoir déclencher BFC

BFC peut être déclenché lorsqu'une des conditions suivantes est remplie, se transformant en BFC


L'élément racine

l'attribut float n'est pas nul

la position

n'est pas statique et relative

le débordement

n'est pas visibleaffichage pour inline-block, table-cell, table-caption, flex, inline-flex

Vous constaterez que BFC est partout, vous ne le savez tout simplement pas lorsque vous l'utilisez

3.Règles de disposition BFC :

Quelles sont les caractéristiques après transformation en BFC, comme suit :

Les Box internes seront placées les unes après les autres dans le sens vertical.

La distance verticale de la Box est déterminée par la marge. Les marges de deux cases adjacentes appartenant au même BFC se chevaucheront

Le côté gauche de la case de marge de chaque élément est en contact avec le côté gauche de la case de bordure du bloc contenant (pour un formatage de gauche à droite , sinon c'est le contraire). Cela est vrai même s'il y a du flotteur.

La zone BFC ne chevauchera pas la boîte flottante.

BFC est un conteneur indépendant isolé sur la page. Les sous-éléments à l'intérieur du conteneur n'affecteront pas les éléments à l'extérieur. Et vice versa.

Lors du calcul de la hauteur du BFC, les éléments flottants participent également au calcul

4 Fonction du BFC :

Utilisez-le pour venir boby

1. . Empêcher

Marges

chevauchement bfc provoque le chevauchement des marges des éléments enfants appartenant au même bfc (la distance dans la direction verticale de la Box est déterminée par la marge. Les marges de deux Les boîtes adjacentes appartenant au même BFC se chevaucheront)

Problème : Comme vous pouvez le voir sur l'image, il n'y a qu'une marge de 20 px entre String1 et String2. Logiquement parlant, elle devrait être de 40 px, mais cela provoque leur. les marges se chevauchent dans bfc


Code :

Solution : Nous pouvons envelopper un conteneur à l'extérieur du div et déclencher le conteneur pour générer un BFC. Ensuite, les deux div n’appartiennent pas au même BFC et aucun chevauchement de marge ne se produira.
<style>.container1{
        /* 通过overflow:hidden可以创建bfc */
        overflow: hidden;
        background-color: red;
        width: 300px;
    }
    .sub1{
        margin: 20px 0px;
        background-color: #dea;
    }</style><div class="container1">
        <div class="sub1">String1</div>
        <div class="sub1">String2</div></div>
Copier après la connexion


Code :

2.
<style>
    .newbfc{
            overflow: hidden;
    }</style><div class="container1">
        <div class="sub1">String1</div>
        <div class="newbfc"><div class="sub1">String2</div></div></div>
Copier après la connexion
Effacer le flotteur

:Problème : Lorsque l'élément est un élément enfant Une fois qu'ils flottent tous, il y aura un phénomène d'effondrement en hauteur, c'est-à-dire que la hauteur du conteneur parent ne sera pas étirée


Code :

Solution :
<style>
    .pre2{
        width: 200px;
        border: 2px solid red;
    }
    .float1,.float2{
        width: 100px;
        height: 100px;
        float: left;
    }
    .float1{
        background-color: #dee;
    }
    .float2{
        background-color: #dcc;
    }</style><div class="pre2">
        <div class="float1"></div>
        <div class="float2"></div></div>
Copier après la connexion

Règles Bfc : Lors du calcul de la hauteur de BFC, les éléments flottants participent également au calcul, donc tant que le conteneur parent est défini sur bfc, les éléments enfants peuvent être inclus :

Ce conteneur contiendra des éléments enfants flottants, dont la hauteur de l'élément sera étendue pour inclure ses éléments enfants, et dans ce BFC, ces éléments retomberont dans le flux de documents régulier de la page.


3. Résoudre la mise en page : empêcher le retour à la ligne du texte
.pre2{
        width: 200px;
        border: 2px solid red;
        /* 设置overflow*/
        overflow:hidden;
    }
Copier après la connexion


Code :

L'élément p n'est pas déplacé , Mais il apparaît sous l'élément flottant. Les zones de ligne (faisant référence aux lignes de texte) de l'élément p sont décalées. Ici, le rétrécissement horizontal des cases de ligne fournit de l'espace pour les éléments flottants.
<style>.container2{
        overflow: hidden;
        width: 200px;
    }
    .box{
        float: left;
        width: 100px;
        height: 30px;
        background-color: #daa;
    }</style><div class="container2">
        <div class="box"></div>
        <p style="background-color: #eea">sdfadsfdff fffffffds fsfffff sfd  fsdsdfsdf fffffff</p></div>
Copier après la connexion

Règles BFC : Le côté gauche de la zone de marge de chaque élément touche le côté gauche de la zone de bordure du bloc contenant (pour un formatage de gauche à droite, sinon l'inverse). Cela est vrai même s'il y a du flotteur.

Pour résoudre ce problème, ajoutez simplement overflow:hidden à l'élément p pour en faire un nouveau bfc

Je pense que vous maîtrisez la méthode après avoir lu ces cas. Pour des choses plus excitantes, s'il vous plaît. faites attention à php Autres articles connexes sur le site chinois !

Lecture connexe :

Quels sont les attributs couramment utilisés pour diviser les cadres et les fenêtres en HTML ?


Quels sont les références au CSS en HTML ?

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!

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment utiliser Bootstrap en Vue Comment utiliser Bootstrap en Vue Apr 07, 2025 pm 11:33 PM

L'utilisation de bootstrap dans vue.js est divisée en cinq étapes: installer bootstrap. Importer un bootstrap dans main.js. Utilisez le composant bootstrap directement dans le modèle. Facultatif: style personnalisé. Facultatif: utilisez des plug-ins.

Les rôles de HTML, CSS et JavaScript: responsabilités de base Les rôles de HTML, CSS et JavaScript: responsabilités de base Apr 08, 2025 pm 07:05 PM

HTML définit la structure Web, CSS est responsable du style et de la mise en page, et JavaScript donne une interaction dynamique. Les trois exercent leurs fonctions dans le développement Web et construisent conjointement un site Web coloré.

Comment écrire des lignes fendues sur bootstrap Comment écrire des lignes fendues sur bootstrap Apr 07, 2025 pm 03:12 PM

Il existe deux façons de créer une ligne divisée bootstrap: en utilisant la balise, qui crée une ligne divisée horizontale. Utilisez la propriété CSS Border pour créer des lignes de fractionnement de style personnalisées.

Comprendre HTML, CSS et JavaScript: un guide pour débutant Comprendre HTML, CSS et JavaScript: un guide pour débutant Apr 12, 2025 am 12:02 AM

WebDevelopmentReliesOnHTML, CSS, etjavascript: 1) HTMLSTRUCTURESCONTENT, 2) CSSSTYLESIT, et3) JavascriptAdddsInterActivity, Forming TheasisofmodernweBEBExperiences.

Comment utiliser le bouton bootstrap Comment utiliser le bouton bootstrap Apr 07, 2025 pm 03:09 PM

Comment utiliser le bouton bootstrap? Introduisez Bootstrap CSS pour créer des éléments de bouton et ajoutez la classe de bouton bootstrap pour ajouter du texte du bouton

Comment configurer le cadre de bootstrap Comment configurer le cadre de bootstrap Apr 07, 2025 pm 03:27 PM

Pour configurer le framework Bootstrap, vous devez suivre ces étapes: 1. Référez le fichier bootstrap via CDN; 2. Téléchargez et hébergez le fichier sur votre propre serveur; 3. Incluez le fichier bootstrap dans HTML; 4. Compiler les sass / moins au besoin; 5. Importer un fichier personnalisé (facultatif). Une fois la configuration terminée, vous pouvez utiliser les systèmes, composants et styles de grille de Bootstrap pour créer des sites Web et des applications réactifs.

Comment redimensionner le bootstrap Comment redimensionner le bootstrap Apr 07, 2025 pm 03:18 PM

Pour ajuster la taille des éléments dans Bootstrap, vous pouvez utiliser la classe de dimension, qui comprend: ajuster la largeur: .col-, .w-, .mw-ajustement Hauteur: .h-, .min-h-, .max-h-

Comment insérer des photos sur bootstrap Comment insérer des photos sur bootstrap Apr 07, 2025 pm 03:30 PM

Il existe plusieurs façons d'insérer des images dans Bootstrap: insérer directement les images, en utilisant la balise HTML IMG. Avec le composant d'image bootstrap, vous pouvez fournir des images réactives et plus de styles. Définissez la taille de l'image, utilisez la classe IMG-FLUID pour rendre l'image adaptable. Réglez la bordure en utilisant la classe IMG-border. Réglez les coins arrondis et utilisez la classe Roundée IMG. Réglez l'ombre, utilisez la classe Shadow. Redimensionner et positionner l'image, en utilisant le style CSS. À l'aide de l'image d'arrière-plan, utilisez la propriété CSS d'image d'arrière-plan.

See all articles