Heim > Web-Frontend > CSS-Tutorial > Wie kann ich verhindern, dass Flex-Elemente nebeneinander gerendert werden, anstatt vertikal gestapelt zu werden?

Wie kann ich verhindern, dass Flex-Elemente nebeneinander gerendert werden, anstatt vertikal gestapelt zu werden?

Susan Sarandon
Freigeben: 2024-12-07 17:35:13
Original
522 Leute haben es durchsucht

How Can I Prevent Flex Items from Rendering Side-by-Side Instead of Stacking Vertically?

Verhindern, dass Flex-Elemente nebeneinander gerendert werden

Bei der Verwendung von Flexbox stoßen wir häufig auf Situationen, in denen wir Elemente in einem zentrieren möchten Block, aber jedes Element belegt eine eigene Zeile. Leider verschiebt Flexbox manchmal Elemente beiseite, wenn wir sie untereinander positionieren möchten.

Betrachten Sie die folgende HTML-Struktur, bei der ein orangefarbenes Quadrat und ein Textelement mithilfe von Flexbox mit Justify-Content in einem Container platziert werden: Center und align-items: center:

<div class="container">
  <div class="inner">
    <div class="square"></div>
    <p>some text</p>
  </div>
</div>
Nach dem Login kopieren

Und das zugehörige CSS:

.container {
  height: 200px;
  width: 200px;
  background: cornflowerblue;
  position: relative;
}

.inner {
  height: 100%;
  position: absolute;
  left: 0;
  width: 100%;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.square {
  width: 30px;
  height: 30px;
  background: tomato;
  display: block;
}
Nach dem Login kopieren

Beim Anwenden von Flexbox wird das orangefarbene Quadrat angezeigt. Anstatt über dem Text positioniert zu werden, landet es seitlich. Um dies zu beheben, müssen wir die Flex-Direction-Eigenschaft des inneren Containers ändern:

.inner {
  ...
  flex-direction: column;
}
Nach dem Login kopieren

Das Festlegen von „Flex-Direction: Column“ weist die Flexbox an, ihre untergeordneten Elemente vertikal untereinander und nicht in einer Reihe anzuzeigen . Dieses Verhalten entspricht unserer Anforderung, das orangefarbene Quadrat über dem Text zu platzieren.

Das obige ist der detaillierte Inhalt vonWie kann ich verhindern, dass Flex-Elemente nebeneinander gerendert werden, anstatt vertikal gestapelt zu werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage