2012-07-13 99 views
0

我有一个流体网格布局,3行,每个都有3个不同的%宽度块。本质上,这是一个3x3网格,扩大视口中的horz和vert,尽管宽度不同。在每个块中,有一个图像设置为100%宽度。jquery垂直中心不同尺寸的多个图像

我写了这个小脚本来垂直对齐块中的这些图像,但是,margin-top将相同的值应用于所有图像。我需要它将值应用于单个图像。

<script> 
$(window).on('resize', function() { 
var $gii = $('.grid-item-img'); 
var giih = $gii.height(); 
$gii.css('margin-top', + giih/-2 + "px"); 
}).trigger('resize'); 
</script> 

对电网项目-IMG的CSS是:

.grid-item-img {display: block; width: 100%; position: absolute; top: 50%;} 

谢谢!

+0

只是一个猜测,作为即时通讯累笑,不应该被你使用'某种each'声明? – 2012-07-13 18:37:48

回答

0

使用jQuery .each()

$(window).on('resize', function() { 
    $('.grid-item-img').each(function(index, element) { 
     var $element = $(element); 
     $element.css('margin-top', + $element.height()/-2 + "px"); 
    }); 
}).trigger('resize'); 
+0

是的,谢谢,这工作。 – user1521516 2012-07-13 18:52:55