suchen
HeimWeb-FrontendCSS-TutorialFloat-Definition und Float-Clearance (BFC)

Float

1. Was ist Float?

Float tritt auf, wenn das <a href="http://www.php.cn/wiki/919.html" target="_blank">float</a> -Attribut des Elements nicht none ist.

<p class="float">float</p>
.float {
  float: left;
  width: 100px;
  height: 100px;
  background-color: #ddd;
}

2. Die Auswirkung von Floating

  1. Floating führt dazu, dass Elemente aus dem Dokumentenfluss ausbrechen, insbesondere wie folgt:

  • Das übergeordnete Element ist stark reduziert, d. h. es enthält keine schwebenden Elemente.
    Zum Beispiel wird der obige Code als

    Float-Definition und Float-Clearance (BFC)

    Das übergeordnete Element wird stark reduziert

  • Textumbruch angezeigt .

    Float-Definition und Float-Clearance (BFC)

    Textumbrucheffekt


    Sie können feststellen, dass die Breite des .normal-Elements das .float abdeckt Element, aber es gibt keinen Text unter dem .float-Element, was bedeutet, dass der Text „herausgedrückt“ wird. Dies liegt daran, dass er zwar aus dem Dokumentfluss ausbricht, aber nicht aus dem Textfluss ausbricht. Dieser Effekt ist auch die ursprüngliche Absicht des float-Attributs. Der Code lautet wie folgt:

    
      <p class="float">float</p>
      

    正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素正常元素

    body {
      background-color: #ccc;
    }
    .float {
      float: left;
      width: 100px;
      height: 100px;
      background-color: #ddd;
    }
    .normal {
      background-color: #fff;
    }
  • Die Ränder von schwebenden Elementen werden nicht zusammengeführt.
    Für verwandte Inhalte zur Margenzusammenführung können Sie hier klicken. Sobald das Element

  • schwebend ist, wird es zu einem Inline-Blockelement, d. h. <a href="http://www.php.cn/wiki/927" . .html target="_blank">display<code><a href="http://www.php.cn/wiki/927.html" target="_blank">display</a>: inline-block: inline-block.

  • 3. Floating-Anwendung

    • Textumbruch wie oben erwähnt.

    • Schreiben Sie ein dreispaltiges Layout mit fester Breite links und rechts und adaptiver Mitte.

      <body>
        <p class="left float">left</p>
        <p class="right float">right</p>
        <p class="mid">自适应宽度元素自适应宽度元素自适应宽度元素自适应宽度元素自适应宽度元素自适应宽度元素自适应宽度元素自适应宽度元素自适应宽度元素</p>
      </body>
      body {
        background-color: #ccc;
      }
      .float {
        float: left;
        width: 100px;
        height: 100px;
        background-color: #ddd;
      }
      .left {
        float: left;
      }
      .right {
        float: right;
      }
      .mid {
        height: 100px;
        background-color: #fff;
        margin: 200px; /*故意加上了上下 margin 值*/
      }

      Hier habe ich absichtlich den Wert margin hinzugefügt, und Sie können den Effekt sehen:

      Float-Definition und Float-Clearance (BFC)

      drei Spalten Das Layout

      body fällt auch mit dem .mid von margin zusammen. Dies kann durch die zuvor eingeführte Randzusammenführung erklärt werden.

      ps: Als ich dieses dreispaltige Layout zum ersten Mal schrieb, war das HTML so geschrieben

      <body>
        <p class="left float">left</p>
        <p class="mid">自适应宽度元素自适应宽度元素自适应宽度元素自适应宽度元素自适应宽度元素自适应宽度元素自适应宽度元素自适应宽度元素自适应宽度元素</p>
        <p class="right float">right</p>
      </body>

      Schreiben Sie wie oben das mittlere adaptive Element in die Mitte. Tatsächlich ist dies der Fall Konsistenter. Logik, aber wenn es so geschrieben wird, wird das Element auf der rechten Seite nicht funktionieren, da das Element .mid ein Element auf Blockebene ist und nicht die gesamte Zeile ausfüllt herunterfallen, da es sich ursprünglich außerhalb des Dokumentenflusses schwebender Elemente befindet. .left

    Floating löschen

    Bei untergeordneten Elementen löschen

    Hier schreibe ich nur Methoden, die keine bedeutungslosen Tags erzeugen.

    • Wenn sich hinter dem schwebenden Element ein Geschwisterelement befindet, können Sie das Attribut

      zu seinem Geschwisterelement hinzufügen. clearWenn Text diesen Teil des Codes umgibt, fügen Sie
      oder .normal zu clear:left hinzu. Auf die spezifische Verwendung von clear:both wird hier nicht näher eingegangen. clear

    • Fügen Sie dem Element, dessen Floating gelöscht werden soll, eine Pseudoklasse oder ein Pseudoelement hinzu.

      .float::after {
        content: &#39;&#39;;
        display: block;
        visiability: hidden;
        height: 0;
        clear: both;
      }
      Informationen zur Verwendung von ::after finden Sie in der MDN-Dokumentation.

    wird im übergeordneten Element gelöscht, d. h. BFC

    BFC (Block Formatting Context), d. h. Formatierungskontext auf Blockebene, seine offizielle Erklärung lautet:

    schwebende, absolut positionierte Elemente (

    ist position oder absolute), Inline-Blockelement fixed, Tabellenzelle display:inline-block, Tabellentitel display:table-cell und display:table-caption Attributwert ist nicht Das overflow-Element (außer wenn der Wert an das Ansichtsfenster visible weitergegeben wird) erstellt einen neuen Formatierungskontext auf Blockebene. viewport

    Zusammenfassend muss es eine der folgenden Bedingungen erfüllen:

    1. Nicht floatnone

    2. ist nicht position oder staticrelative

    3. ist display, table-cell, table-caption, inline-block, flexinline-flex

    4. Nicht overflowvisible

    Solange Sie dem übergeordneten Element eines der oben genannten Attribute hinzufügen, um die Bedingungen zu erfüllen, ist das der Fall Das heißt, fügen Sie es dem übergeordneten Element hinzu. Gehen Sie zu BFC, um den Float von untergeordneten Elementen zu löschen.

    【Verwandte Empfehlungen】

    1.

    Kostenloses CSS-Online-Video-Tutorial

    2.

    CSS-Online-Handbuch

    3.

    php.cn Dugu Jiujian (2) – CSS-Video-Tutorial

    Das obige ist der detaillierte Inhalt vonFloat-Definition und Float-Clearance (BFC). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

    Stellungnahme
    Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
    So viele FarblinksSo viele FarblinksApr 13, 2025 am 11:36 AM

    Es gab in letzter Zeit eine Reihe von Werkzeugen, Artikeln und Ressourcen über Farbe. Bitte erlauben Sie mir, ein paar Registerkarten zu schließen, indem Sie sie hier für Ihren Vergnügen zusammenrunden.

    Wie automatische Margen in Flexbox funktionierenWie automatische Margen in Flexbox funktionierenApr 13, 2025 am 11:35 AM

    Robin hat dies schon einmal abgedeckt, aber ich habe in den letzten Wochen einige Verwirrung darüber gehört und gesehen, wie eine andere Person einen Stich gemacht hat, um es zu erklären, und ich wollte

    Bewegliche Regenbogen unterstreichtBewegliche Regenbogen unterstreichtApr 13, 2025 am 11:27 AM

    Ich liebe das Design der Sandwich -Site. Unter vielen schönen Merkmalen befinden sich diese Schlagzeilen mit Regenbogenuntergründen, die sich beim Scrollen bewegen. Es ist nicht

    Neues Jahr, neuer Job? Lassen Sie einen netzbetriebenen Lebenslauf machen!Neues Jahr, neuer Job? Lassen Sie einen netzbetriebenen Lebenslauf machen!Apr 13, 2025 am 11:26 AM

    Viele beliebte Lebenslaufdesigns machen den verfügbaren Seitenraum optimal, indem sie Abschnitte in Gitterform legen. Verwenden wir ein CSS -Netz, um ein Layout zu erstellen, das

    Eine Möglichkeit, die Benutzer aus der Gewohnheit herauszubrechen, zu viel neu zu ladenEine Möglichkeit, die Benutzer aus der Gewohnheit herauszubrechen, zu viel neu zu ladenApr 13, 2025 am 11:25 AM

    Seiten -Nachladen sind eine Sache. Manchmal aktualisieren wir eine Seite, wenn wir der Meinung sind, dass sie nicht mehr reagiert, oder glauben, dass neue Inhalte verfügbar sind. Manchmal sind wir nur sauer auf

    Domänengetriebenes Design mit ReactDomänengetriebenes Design mit ReactApr 13, 2025 am 11:22 AM

    Es gibt nur sehr wenige Anleitungen zur Organisation von Front-End-Anwendungen in der Welt der Reaktionen. (Bewegen Sie einfach Dateien um, bis es sich „richtig anfühlt“, lol). Die Wahrheit

    Erkennen inaktiver BenutzerErkennen inaktiver BenutzerApr 13, 2025 am 11:08 AM

    Meistens kümmert es Sie sich nicht wirklich darum, ob ein Benutzer aktiv mit Ihrer Anwendung inaktiv oder vorübergehend inaktiv ist. Inaktiv, was vielleicht sie vielleicht

    Wufoo ZapierWufoo ZapierApr 13, 2025 am 11:02 AM

    Wufoo war immer großartig bei Integrationen. Sie haben Integrationen mit bestimmten Apps wie Kampagnenmonitor, MailChimp und Typkit, aber auch sie

    See all articles

    Heiße KI -Werkzeuge

    Undresser.AI Undress

    Undresser.AI Undress

    KI-gestützte App zum Erstellen realistischer Aktfotos

    AI Clothes Remover

    AI Clothes Remover

    Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

    Undress AI Tool

    Undress AI Tool

    Ausziehbilder kostenlos

    Clothoff.io

    Clothoff.io

    KI-Kleiderentferner

    AI Hentai Generator

    AI Hentai Generator

    Erstellen Sie kostenlos Ai Hentai.

    Heißer Artikel

    R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
    3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O. Beste grafische Einstellungen
    3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
    3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
    WWE 2K25: Wie man alles in Myrise freischaltet
    4 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌

    Heiße Werkzeuge

    PHPStorm Mac-Version

    PHPStorm Mac-Version

    Das neueste (2018.2.1) professionelle, integrierte PHP-Entwicklungstool

    Senden Sie Studio 13.0.1

    Senden Sie Studio 13.0.1

    Leistungsstarke integrierte PHP-Entwicklungsumgebung

    SAP NetWeaver Server-Adapter für Eclipse

    SAP NetWeaver Server-Adapter für Eclipse

    Integrieren Sie Eclipse mit dem SAP NetWeaver-Anwendungsserver.

    SublimeText3 Mac-Version

    SublimeText3 Mac-Version

    Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

    VSCode Windows 64-Bit-Download

    VSCode Windows 64-Bit-Download

    Ein kostenloser und leistungsstarker IDE-Editor von Microsoft