2011-04-12 34 views
1

以前,我問如何中心一個div內排列的圖像(W /動態寬度),並使用此代碼的人回答說:當css類被多次使用時,Javascript無法正常工作?

http://jsfiddle.net/WDzx4/6/

它的正常工作。然而,當我嘗試使用同一類的其他圖像,其他的圖像不再垂直居中:

http://jsfiddle.net/b4Bbd/

你看,如今,50×50的黑色圖像略高於它應該是。我注意到只有第一個圖像被正確對齊。如果在此之後添加具有不同寬度和高度的其他圖像(使用相同的類),則它們將錯位。

有人可以幫我找到問題,因爲我不熟悉JavaScript。

回答

4

你需要用JavaScript的盡所有匹配的元素,而不是計算高度爲一個適用於所有:

$('div.container_img img').each(function() { 
    var $img = $(this); 
    var h = $img.height(); 
    $img.css('margin-top', +h/-2 + "px"); 
}); 
+0

+1,以最快的槍! – 2011-04-12 03:29:27

+0

非常感謝! :d – catandmouse 2011-04-12 04:08:00

相關問題