Comment aligner verticalement une image dans une div avec une hauteur dynamique?
Ce que nous avons est un div qui contient l'image que l'utilisateur télécharge. C'est le code:
HTML:
<div class="container_img">
<img height="120" width="150" src="[image name].jpg">
</div>
CSS:
div.container_img {
overflow: hidden;
width: 150px;
height: 150px;
}
Notre problème est que si l'image que l'utilisateur télécharge a une hauteur plus petite que 150px, il y a un grand espace en bas. Nous voulons donc alignées à la verticale de l'image, de sorte qu'il ne ressemble pas à elle flotte.
J'ai essayé de chercher des solutions sur le net mais je ne peux pas en trouver un qui fonctionne avec des images dynamiques à l'intérieur d'un DIV. Certaines solutions nécessitent que vous connaissez les dimensions de l'image.
Personne n'a eu ce problème et l'a résolu?
source d'informationauteur catandmouse
Vous devez vous connecter pour publier un commentaire.
Vous avez besoin d'utiliser JavaScript/jQuery pour détecter la hauteur de l'image. CSS n'est pas un langage dynamique et vous ne pouvez pas détecter la hauteur à l'aide d'pur css. À l'aide de jQuery, vous pouvez faire
jQuery
CSS
Vérifier exemple de travail à http://jsfiddle.net/nQ4uu/2/
fonctionne, mais je ne sais pas si ça le fait sur toutes les versions IE.
Je pense que vous ne serez pas en mesure d'aligner l'image à la verticale à l'aide de tout droit vers l'avant de la technique. Vous pouvez voir cette pour aligner l'image à l'horizontale...
il n'est pas facile, consultez cette page http://www.vdotmedia.com/demo/css-vertically-center.html
Vous pouvez atteindre cet objectif à l'aide de flex dans le css:
Je sais que c'est une vieille question, mais je pense qu'il y a i s meilleure réponse avec CSS seul
DÉMO jsFiddle
HTML
CSS
Que c'est!