2012-04-12 4 views
1

Donc voici mon problème, je connais la largeur des images, mais je ne connais pas la hauteur, et j'utilise un préchargeur, mon problème est que lorsque les images sont chargement ... le contenu sous les images rebondit ... quand il est entièrement chargé, Si j'avais des images fixes largeur & hauteur, il sera facile de résoudre ce problème, il suffit de les définir en utilisant les attributs de largeur et de hauteur et ça va aller.Obtenez la hauteur des images, avant qu'elles ne soient chargées

Mais est-il un moyen de définir la hauteur avant que la page est rendue, peut-être en utilisant PHP ou plus.

+2

Si vous tirez les adresses d'images sur une base de données et vous ne savez pas ce que les images seront chargées (si vous ne connaissez pas la hauteur), il serait probablement plus rapide et plus efficace pour stocker l'image dimensions dans la base de données. Sinon, vous allez demander au serveur de faire beaucoup de travail supplémentaire sur chaque pageload. –

Répondre

2

Eh bien, vous pouvez obtenir la hauteur et la largeur via imagesx et images puis l'imprimer .

<?php 
$img = 'image.jpg'; 
$image = imagecreatefromjpeg($img); 
$width = imagesx($image); 
$height = imagesy($image); 
print '<img src="'.$img.'" height="'.$height.'" width="'.$width.'" alt="" />'; 
?> 
+1

Notez que cela nécessitera GD et ne fonctionnera qu'avec jpeg –

7

Vous pouvez utiliser getimagesize() côté serveur avec php pour obtenir la hauteur de l'image et ajouter ces données correctement au format html. Si vous avez trop d'images et que vous ne voulez pas y aller chaque fois que la page se charge, alors pensez à mettre ces données dans la base de données quelque part

Questions connexes