Heim  >  Artikel  >  Web-Frontend  >  Warum überschreitet mein Flex-Kind in Firefox die Körpergröße des Elternteils, nicht jedoch in Chrome?

Warum überschreitet mein Flex-Kind in Firefox die Körpergröße des Elternteils, nicht jedoch in Chrome?

DDD
DDDOriginal
2024-10-24 18:42:02167Durchsuche

Why Does My Flex Child Exceed Parent Height in Firefox but Not Chrome?

Verhindern, dass untergeordnete Flex-Elemente die übergeordnete Höhe überschreiten

Wenn ein Flex-Container ein untergeordnetes Element mit sowohl flex: 1 als auch overflow-y enthält: Beim Scrollen entsteht eine Diskrepanz zwischen Chrome und Firefox. In Chrome wird das untergeordnete Element erweitert, um den verbleibenden Platz auszufüllen, ohne die Höhe des übergeordneten Elements zu überschreiten, was zu sichtbaren Bildlaufleisten führt. In Firefox erhöht sich jedoch die Höhe des untergeordneten Elements und bricht aus dem übergeordneten Element aus.

Lösung

Um dieses Problem in Firefox zu beheben, ersetzen Sie flex: 1 durch flex: 1 1 1px. Dadurch wird eine feste Mindestbasis von 1 Pixel festgelegt, um sicherzustellen, dass das untergeordnete Element die Höhe des übergeordneten Elements auch bei einem Inhaltsüberlauf nicht überschreitet.

Überarbeiteter Code

<code class="css">#messagelist {
  flex: 1 1 1px;
}

#messagecontents {
  flex: 1 1 1px;
}</code>

Durch diese Änderung wird sichergestellt, dass die untergeordneten Elemente erweitert werden, um den verfügbaren Platz auszufüllen, während sie im Flex-Container enthalten bleiben. Sowohl in Chrome als auch in Firefox werden Bildlaufleisten angezeigt, die es Benutzern ermöglichen, Inhalte außerhalb des sichtbaren Bereichs anzuzeigen.

Das obige ist der detaillierte Inhalt vonWarum überschreitet mein Flex-Kind in Firefox die Körpergröße des Elternteils, nicht jedoch in Chrome?. 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