2017-12-22 4 views
3

Ich versuche, 3 Bilder mit gleichem Platz um sie zu rechtfertigen. Ich stelle die Breite der Bilder in Prozent ein. Ich habe versucht, Flexbox zu verwenden und justify-content: space-evenly aber Bilder nicht Seitenverhältnis beibehalten:Begründen Sie Elemente mit gleichem Raum um sie herum und behalten Sie das Seitenverhältnis bei?

Codepen

.container { 
 
    width: 50%; 
 
    border: 1px solid black; 
 
    
 
    display: flex; 
 
    justify-content: space-evenly; 
 
} 
 

 
.container img { 
 
    width: 10%; 
 
}
<div class="container"> 
 
    <img src="https://cdn2.iconfinder.com/data/icons/humano2/128x128/status/gtk-missing-image.png" /> 
 
    <img src="https://cdn2.iconfinder.com/data/icons/humano2/128x128/status/gtk-missing-image.png" /> 
 
    <img src="https://cdn2.iconfinder.com/data/icons/humano2/128x128/status/gtk-missing-image.png" /> 
 
</div>

Ich brauche Seitenverhältnis

+0

Note Do, ' space-evenly wird keine Augenbrauen funktionieren da nicht alle von ihnen es unterstützen. Das Seitenverhältnis bricht aufgrund der Standardausrichtung von "align-items: stretch", also ändern Sie es z. 'Flex-Start'. Ein Workaround für 'space-evenal' findet sich im Dupe-Link. – LGSon

Antwort

1

wird Ihr Problem lösen

Ich habe soeben align-items: center; auf Ihre .container und löst es.

Eine Arbeitsprobe aus Ihrer Geige:

.container { 
 
    width: 50%; 
 
    border: 1px solid black; 
 
    display: flex; 
 
    justify-content: space-evenly; 
 
    align-items: center; 
 
} 
 

 
.container img { 
 
    width: 10%; 
 
}
<div class="container"> 
 
    <img src="https://cdn2.iconfinder.com/data/icons/humano2/128x128/status/gtk-missing-image.png" /> 
 
    <img src="https://cdn2.iconfinder.com/data/icons/humano2/128x128/status/gtk-missing-image.png" /> 
 
    <img src="https://cdn2.iconfinder.com/data/icons/humano2/128x128/status/gtk-missing-image.png" /> 
 
</div>

Hoffnung war hlpfull für Sie.

+0

Vielen Dank! – Ildar

0

Versuchen Sie, diese justify-content: space-between; Wenn dies zu halten funktioniert auch nicht, dann verwenden Sie vielleicht nicht Chrome oder die neueste Version von Chrome.

0

Verwenden Sie einen leeren <span> und space-between gleich Raum um jeden <img> zu erstellen.

Versuchen Sie folgendes:

.container { 
 
    width: 50%; 
 
    border: 1px solid black; 
 
    
 
    display: flex; 
 
    justify-content: space-between; 
 
} 
 

 
.container img { 
 
    width: 10%; 
 
}
<div class="container"> 
 
<span></span> 
 
<img src="https://cdn2.iconfinder.com/data/icons/humano2/128x128/status/gtk-missing-image.png" /> 
 
<img src="https://cdn2.iconfinder.com/data/icons/humano2/128x128/status/gtk-missing-image.png" /> 
 
<img src="https://cdn2.iconfinder.com/data/icons/humano2/128x128/status/gtk-missing-image.png" /> 
 
<span></span> 
 
</div>

Oder eine Gnade Art und Weise, die nicht benötigen, um Ihre HTML zu bearbeiten:

.container { 
 
    width: 50%; 
 
    border: 1px solid black; 
 
    
 
    display: flex; 
 
    justify-content: space-between; 
 
} 
 

 
.container::before, .container::after { 
 
    content: ""; 
 
} 
 

 
.container img { 
 
    width: 10%; 
 
}
<div class="container"> 
 
<img src="https://cdn2.iconfinder.com/data/icons/humano2/128x128/status/gtk-missing-image.png" /> 
 
<img src="https://cdn2.iconfinder.com/data/icons/humano2/128x128/status/gtk-missing-image.png" /> 
 
<img src="https://cdn2.iconfinder.com/data/icons/humano2/128x128/status/gtk-missing-image.png" /> 
 
</div>

Verwandte Themen