text-align: justifier et images
J'ai une liste d'images (pas dans une liste, mais qui pourraient l'être si cela peut résoudre le problème) que je veux remplir toute la largeur de la div. J'ai essayé le code en bas, et alors qu'il ne justifier le texte dans la balise p il ne veut pas faire de même pour les images. Comment puis-je obtenir à espacer correctement les images sur toute la largeur de la div?
<div>
<p>
<img src="image1.png" alt="foo" />
<img src="image2.png" alt="foo" />
<img src="image3.png" alt="foo" />
<img src="image4.png" alt="foo" />
<img src="image5.png" alt="foo" />
</p>
</div>
Mon CSS:
div { width: 30em; }
p { text-align: justify; }
source d'informationauteur chrism | 2009-09-23
Vous devez vous connecter pour publier un commentaire.
La façon la plus simple de le faire est :
*:après :
N'oubliez pas content:""; sans elle, il n'apparaîtra pas. Dans mon exemple j'ai utilisé un inline-block, une largeur de 100%. Il sera toujours le saut de ligne après le contenu de mon paragraphe.
Bon codage ! 🙂
Images sont affichées en ligne, de sorte que vous pourriez aussi bien utiliser le text-align:justifier d'une propriété css pour aligner vos images avec les css. Comme d'autres suggèrent, si vous voulez justifier la dernière rangée, vous devez insérer une sorte ou d'image vide qui prend toute la largeur, à la fin de votre liste d'images.
Voir http://fiddle.jshell.net/ewv6K/show/
Dans un texte justifié, la dernière ligne de texte dans un paragraphe n'est pas développée pour remplir toute la largeur. Afin de rendre les images en ligne de propagation, vous avez besoin de suffisamment de contenu pour tirer le paragraphe à deux ou plusieurs lignes, par exemple.:
(ou une autre tout aussi laid mais moins visibles version impliquant
.) C'est un peu un vilain hack.Je sais que c'est le cas, mais juste pensé que je voudrais ajouter une solution simple.
text-align: justify
ne fonctionnera que si il n'y a plus d'une ligne (si vous l'utilisez sur un paragraphe de texte, vous verrez que la dernière ligne ne justifie pas). Ce petit jQuery extension va ajouter un élément invisible à l'élément que vous essayez de justifier et donc, vos images seront répartis de façon égale:Alors tout ce que vous devez faire est d'appeler:
Ce javascript permettront de répartir les images sur le div du middleand sur les côtés:
Le script asume un couple de choses;
Vous pouvez bien sûr ajouter le support de l'image variable largeurs et ainsi de suite, mais ce n'était pas vraiment dans le champ d'application ici.
Ce script se chargera de distribuer les images uniformément si vous ajoutez ou supprimez des images, bien sûr à une certaine limite. Si la largeur totale des images est supérieure à la largeur de la div, il y aura de l'emballage.
Espère que cela aide!