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
Susan SarandonOriginal
2024-12-07 17:35:13520Durchsuche

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>

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;
}

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;
}

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!

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