Verticalement et Horizontalement Centre de l'Image à l'intérieur d'un Div, si vous ne connaissez pas l'Image de la Taille?
Si j'ai un fixe de taille moyenne div conteneur, et une inconnue de taille de l'image, comment puis-je horizontalement et verticalement centre?
- à l'aide de pure css
- à l'aide de JQuery si css ne peut pas le faire
Cette réponse est juste pour largeur fixe images, mais pas variable.
Quelque chose comme cette structure (j'ai à l'esprit élément de convertisseurs similaires à celles de la liste, mais où l'image sur la gauche de ne pas toujours être de la même taille:
<ul id="gallery">
<li id="galleryItem1">
<div class="imageContainer">
<img src="gallery/image1"/>
</div>
<p>Some text to the right...</p>
<!-- more stuff -->
</li>
<li id="galleryItem2">
<!-- ... -->
</ul>
Merci pour l'aide!
OriginalL'auteur Lance Pollard | 2010-03-13
Vous devez vous connecter pour publier un commentaire.
Si le réglage de l'image en tant qu'image d'arrière-plan et le centrage de cette façon n'est pas une option, le jQuery pour s'adapter la réponse que vous lié pour les images statiques:
en supposant une classe CSS définie comme
avec le fixe-largeur de la div ayant une hauteur et
position:relative
déclaré.[important js edit: activé.style()' pour '.css()']
OriginalL'auteur D_N
Vous pouvez utiliser
background-position
.désolé, je n'ai pas mon mot correctement à la question. L'image serait un chargé dans une balise img. J'ai mis à jour la question. Mais c'est très utile, merci!
dans ce cas, je vous recommande d'utiliser le crossbrowser solution posté par edtsech
OriginalL'auteur Wolph
Crossbrowser solution
Solution originale pour vertical div positionnement
Il est pirater pour IE
... bon, les navigateurs jeter des propriétés CSS si leur nom commence par un dièse. IE n'est pas, cependant.
OriginalL'auteur edtsech
Découvrez ma solution: http://codepen.io/petethepig/pen/dvFsA
Il est écrit en pur CSS, sans aucun code JS. Il peut manipuler des images de toute taille et de toute orientation.
ajouter un autre div pour votre code HTML:
Code CSS:
Mise à jour: je me suis débarrassé de cette
<div class="trick"></div>
élément en faveur de:before
sélecteur CSSOriginalL'auteur dmitry
Si vous ne connaissez pas la taille d'une image, mais vous avez téléchargé les photos à côté de la taille du conteneur (peut-être plus grand ou plus petit des images), ce poste peut être utile. Quelque chose qui fonctionne pour moi est donc le code suivant:
Et dans le .le fichier css, vous avez les règles suivantes:
Vous pouvez remarquer que vous avez une image de balise à l'intérieur d'un.linkPic, de sorte que vous devez d'abord définir comme "position:relative" pour contenir les "img" absolue de l'élément. Le truc pour le centre de l'image sans problèmes est un peu de jQuery. Suivez les commentaires pour comprendre ce qui se passe sur (certaines lignes ont été prises à partir de l'Vladimir Maryasov post de cette page):
Après cela, toutes les photos à l'intérieur dans un.linkPic conteneurs seront placés parfaitement centré. J'Espère que ce post peut être utile pour quelqu'un!
OriginalL'auteur Ricardo Rodriguez
À l'aide de display: table-cell truc div
Travail correctement dans: Firefox, Safari, Opera, Chrome, IE8
CSS exemple:
Exemple de code HTML:
Firefox exemple
Je pensais que c'était du pur génie, mais il ya un hic. L'auto marges j'ai mis pour la div extérieure en aller, j'ai donc d'obtenir une image centrée dans une boîte, mais la boîte est coincé dans le coin supérieur gauche.
J'ai utiliser cette astuce avec IE et j'essaie de trouver une solution pour c'est à dire à bientôt.
OriginalL'auteur edtsech
Vous pouvez également aligner cette façon. Au moins c'est la façon dont je l'ai fait et cela a fonctionné pour moi. Peut-être pas le meilleur moyen de le faire. J'ai eu un tas de différentes taille des logos à l'intérieur de taille fixe divs.
D'abord obtenir les dimensions de l'image. Puis, en fonction de la hauteur de votre div, vous pouvez comprendre quelle est la marge supérieure devrait être. Ce sera à la verticale du centre. Il suffit de changer $IMG_URL et $DIVHEIGHT valeurs.
Par exemple.
OriginalL'auteur vitalyp
C'est un PHP variante.
Il y a beaucoup de code, mais fonctionne comme un charme. Je suis venu avec elle après la lecture de plusieurs posts sur ce sujet. Il positionne les images de différentes tailles en een fixe la largeur et la hauteur de la div
Vous CSS doit contenir ceci:
Votre code doit être ceci:
OriginalL'auteur Rob
Utilisation hauteur:100% pour la balise html, la balise body, d'un conteneur et d'un espace réservé vide de l'élément de plus display:inline-block; vertical-align: middle pour le contenu et l'espace réservé à la verticale du centre de contenu qui a un indéfini de la hauteur sur tous les navigateurs. L'espace réservé élément est donné à 100% de la hauteur pour soutenir la zone de ligne, de sorte que vertical-align: middle a l'effet désiré. Utiliser une largeur fixe conteneur pour envelopper les images.
Utiliser display:inline pour la div du contenu et du texte-alignez le centre de la div conteneur à faire horizontale de centrage pour le contenu qui a un indéfini largeur dans les navigateurs.
Combiner les deux techniques pour créer une image centrée galerie:
OriginalL'auteur Paul Sweatte
J'ai utilisé
au lieu
utilisé dans cette réponse il aide à éliminer le problème avec des valeurs vides de la hauteur et largeur de l'image n'est pas encore chargé
OriginalL'auteur Vladimir Maryasov
Centre de l'image horizontalement et verticalement
DÉMO:
http://jsfiddle.net/DhwaniSanghvi/9jxzqu6j/
OriginalL'auteur Dhwani sanghvi