Heim >Web-Frontend >CSS-Tutorial >Warum funktioniert „Object-Fit' nicht mit Bildern in Flexbox-Spalten?

Warum funktioniert „Object-Fit' nicht mit Bildern in Flexbox-Spalten?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-02 02:25:09788Durchsuche

Why Doesn't `object-fit` Work with Images in Flexbox Columns?

Verstehen, warum „Objektanpassung“ in einer Flexbox nicht funktioniert

In dieser Untersuchung besteht das Ziel darin, das „Objekt“ zu nutzen -fit:cover“-Eigenschaft zum Skalieren von Bildern innerhalb von Flexbox-Spalten. Allerdings wurde beobachtet, dass die Bilder unangepasst bleiben. Dieser Artikel erläutert die zugrunde liegende Mechanik und bietet eine Lösung.

Das Prinzip hinter „Object-Fit“

Gemäß der Spezifikation legt „Object-Fit“ fest, wie a Der Inhalt des ersetzten Elements passt in das durch seine Höhe und Breite definierte Feld.

Der Schlüssel Beobachtung

Entscheidend ist, dass sich die Eigenschaft „Objektanpassung“ nicht auf den übergeordneten Container, sondern auf das ersetzte Element selbst (in diesem Fall das Bild) bezieht.

Lösung : Verschachtelung innerhalb des Flex-Elements

Um das Problem zu beheben, sollten die Bilder zu Flex-Elementen werden, anstatt innerhalb des Flex verschachtelt zu werden Behälter.

Überarbeiteter Code

.container {
  display: flex;
  flex-direction: row;
  width: 100%;
}

img {
  object-fit: cover;
  flex: 1;
  margin-right: 1rem;
  overflow: hidden;
  height: 400px;
}
<div class="container">
  <img src="http://placehold.it/1920x1080">
  <img src="http://placehold.it/1920x1080">
  <img src="http://placehold.it/1920x1080">
  <img src="http://placehold.it/1920x1080">
</div>

Das obige ist der detaillierte Inhalt vonWarum funktioniert „Object-Fit' nicht mit Bildern in Flexbox-Spalten?. 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