3 つ.items_row
の div があり、それぞれに 4 が含まれ、.item
それぞれ.item
に.item_img
. 次のスクリプトを使用して、.item_img
each.item
のそれぞれで最も高いものを見つけ、最も高い高さからそれぞれの最も短い高さを引いた.items_row
最も短いものに下マージンを追加します。.item_img
$('.items_row').each(function(){
var tallestimg = -1;
$(this).children().each(function() {
$(this).find('.item_img').each(function(i) {
tallestimg = $(this).height() > tallestimg ? $(this).height() : tallestimg;
if ($(this).height() < tallestimg) {
$(this).css({ 'margin-bottom': tallestimg - $(this).height() });
}
});
});
});
スクリプトは私が望むとおりに機能しますが、最も高い.item_img
divが最初の.item
divにない場合、最短のdivはまったく取得margin-bottom
されません。たとえば、最も高い.item_img
div が の 2 番目.item
にある.items_row
場合、その.item_img
前の . は無視されmargin-bottom
ます。何か案は?