l'alignement vertical de l'image à l'intérieur d'un div
Je veux régler l'alignement vertical de l'image à l'intérieur d'un div. J'utilise img { vertical-align:middle}
mais ça ne fonctionne pas.
Peut-être liés: stackoverflow.com/questions/3535689/....
Comme un débutant, vous voudrez peut-vote de certaines de ces réponses, car ils sont à vous diriger dans la bonne direction et nous sommes tous pris le temps de travail/vie à aider les uns les autres.
Comme un débutant, vous voudrez peut-vote de certaines de ces réponses, car ils sont à vous diriger dans la bonne direction et nous sommes tous pris le temps de travail/vie à aider les uns les autres.
OriginalL'auteur Deepa | 2011-03-25
Vous devez vous connecter pour publier un commentaire.
À l'aide de la
line-height
propriété permettra de résoudre le problème:pour ie vous pourriez avoir à introduire de zoom
Contrairement à l'affichage de la table-cell, cela fonctionne comme un charme en bas à IE7. Merci!
table-cell faite hauteur:100% d'arrêt de travail dans mon cas.
OriginalL'auteur
C'est une solution qui ne nécessite pas de JavaScript (comme ma solution précédente n').
Vous pouvez obtenir ce que vous voulez en attribuant
display: table-cell
à la div contenant. Voici un exemple: http://jsbin.com/evuqo5/2/editJe sens que je dois vous avertir que vous aurez besoin de tester ce dans tous les navigateurs que vous avez l'intention à l'appui. Soutien pour le
table-cell
valeur est assez nouveau, notamment dans Firefox. Je sais que ça fonctionne dans Firefox 4, mais je ne sais pas du tout de la 3.x itérations. Vous aurez également besoin de tester sous IE (j'ai uniquement testé en Chrome 10 et Firefox 4).Le CSS:
Vous n'aurez pas besoin d'
div#container img
styles si vous ne souhaitez également horizontalement alignement de l'image.OriginalL'auteur
Si vous essayez de faire ce que je pense, vertical align n'est pas d'aller travailler, vous aurez besoin d'utiliser de positionnement.
En général, la position du conteneur parent, puis la position de l'image absolue, avec haut et de gauche, fixé à 50%, puis de déplacer l'image vers le centre par le réglage des marges négatives égale à la moitié de la largeur ou de la hauteur.
Voici un exemple de travail: http://jsbin.com/evuqo5/edit
CSS de base est: est-ce
Je vais poster une autre solution qui fonctionne sans JavaScript, mais ne peuvent pas être pris en charge dans tous les navigateurs.
Nice! Il fonctionne comme un charme. Merci
Je ne sais pas l'image de dimensions. Il a une largeur fixée à un pourcentage, et la hauteur est pas, pour qu'il évolue proportionnellement.
OriginalL'auteur
Voir ce awser: Comment vertical aligner l'image à l'intérieur de la div
Si vous souhaitez aligner horizontalement également, ajouter le
right
etleft
, comme ceci:OriginalL'auteur
Le post suivant a quelques références utiles:
L'Alignement du texte w/IE9 dans les Normes-Mode
Aussi, selon la version de IE que vous testez, vous pourriez avoir besoin de certains spécifiques à un navigateur hacks ou certains jQuery/JavaScript code.
Si vous devez utiliser une seule ligne-l'une des cellules de la table et de profiter de la
vertical-align
de la propriété. C'est la force brute, pas trop sémantique, mais il fonctionne.OriginalL'auteur
Si vous définissez la div
display
attributtable-cell
puisvertical-align: middle;
fonctionne.La
vertical-align
règle n'affecte que les cellules d'un tableau ou d'éléments avecdisplay: table-cell
.Voir cet article à partir de SitePoint pour une explication détaillée.
vous avez raison, j'ai manqué quelque chose. J'ai mis à jour le code du travail. Si vous aviez réellement pris la peine de prendre le temps de lire le lien que j'ai posté, vous auriez remarqué par vous-même et résolu ce problème, déjà. Merci de faire un effort pour réellement apprendre quelque chose de plutôt de simplement demander des réponses.
display: table-cell ne travaille pas dans ie6
OriginalL'auteur