Considérons 3 images (ou plus), tous de tailles différentes et des rapports d'aspect dans une div de largeur fixe (par exemple width:100%
):Fit plusieurs images de différentes tailles dans une rangée de largeur fixe et d'ajuster la hauteur
<div class="image-row">
<img src="1.png">
<img src="2.png">
<img src="3.png">
</div>
Comment pouvez-vous forcer toutes les images à avoir la même hauteur et leur largeur totale pour remplir la largeur du conteneur (c'est-à-dire comment faire une rangée nette d'images)?
J'ai essayé différentes combinaisons de flex ou inline-block ou de nowrap pour fonctionner correctement avec height:100%
ou object-fit, mais rien ne semble fonctionner. Je perds le rapport d'aspect, je coupe des parties de l'image ou je n'ai pas la même hauteur. Dans "pseudocode anglais", la procédure est simple: redimensionnez-la séparément à une hauteur unitaire, puis redimensionnez en tant que groupe à une largeur donnée, tout en conservant les proportions. Existe-t-il une étape particulière dont CSS n'est pas capable?
Eh bien, en utilisant seul CSS, certains ont soit à _loose l'aspect ratio_ ** ou ** parties _cut du image_ si tous devraient avoir des hauteurs égales et adapter à une largeur donnée. – LGSon
@LGSon, pourriez-vous expliquer ce qui cause cette limitation. Dans "pseudocode anglais", la procédure semble simple: redimensionner chacun séparément à une hauteur d'unité, puis redimensionner en tant que groupe à une largeur fixe, tout en conservant les proportions. Existe-t-il une étape particulière dont CSS n'est pas capable? – Krastanov
CSS n'a pas de propriété qui fait _rescale en tant que groupe à largeur fixe, tout en conservant les ratios d'aspect_, pour cela vous avez besoin d'un script – LGSon