2012-04-12 5 views
1

これは私の問題です。画像の幅はわかりますが、高さは分かりません。プリローダーを使用しています。私の問題は画像が読み込み中...イメージの下のコンテンツがバウンスします。完全に読み込まれたときに、画像の幅が&に固定されていれば、これを簡単に解決できます。幅と高さの属性を使用して設定しても問題ありません。画像が読み込まれる前に高さを取得する

しかし、ページがレンダリングされる前に高さを設定する方法があります(PHPなどを使用している可能性があります)。

+2

イメージアドレスをデータベースから取り出して、どのイメージがロードされるのかわからない(高さがわからない)場合は、イメージを保存する方が高速で効率的ですデータベース内のディメンションそれ以外の場合は、各ページロードで多くの追加作業をサーバーに依頼します。 –

答えて

2

さて、imagesxとimagesyで高さと幅を取得し、 。

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

これにはGDが必要であり、jpegでのみ動作することに注意してください –

7

サーバ側でgetimagesize()をphpで使用すると、イメージの高さを取得し、そのデータをhtmlに正しく追加できます。あまりにも多くの画像があり、ページが読み込まれるたびにそれらに行く必要がない場合は、このデータをどこかのデータベースにキャッシュすることを検討してください。

関連する問題