用zurb-foundation网格设置高度

时间:2013-07-18 07:28:45

标签: zurb-foundation

我正在使用zurb-foundation。

如果它们是水平排列的,有没有办法设置两个网格相同的高度。 如果它们是垂直排列的,我想设置不同的高度。

<div class="row">
<div id="left" class="large-4 columns">
<div id="right" class="large-8 columns">
</div>

例如,如果“左”网格的高度为400px而“右”网格的高度为300px,我想将网格400px设置为水平。 但在智能手机这样的小型显示器中,它们是垂直排列的在这种情况下,我想设置“右”网格原始高度(300px)。

我该怎么做?

2 个答案:

答案 0 :(得分:3)

执行此操作的最佳方法是使用简单的JS补救措施。我多年来一直在使用Foundation,这是我的自动防故障代码。

<script>
$(window).load(function() {
    //call the equalize height function
    equalHeight($("div.small-item"));

    //equalize function
    function equalHeight(group) {
        tallest = 0;
        group.each(function() {
            thisHeight = $(this).height();
            if(thisHeight > tallest) {
                tallest = thisHeight;
            }
        });
        group.height(tallest);
    }
});
</script>

这将为“小项目”的所有div类提供相等高度的列。基于最高的柱子高度:

答案 1 :(得分:0)

媒体查询将用于决定断点768px之间要采取的操作。如果你希望两个水平div保持相同的高度,无论两者的内容是什么,甚至当你调整窗口大小时 - 你可能会导致两边的内容不均衡地增长 - 你可能需要使用javascript

我在我的网站上使用了一个,它非常简单,可能并不完全安全,但这是我的解决方案:

$(window).resize(function () {
  var leftblock = $('#left');
  var rightblock = $('#right');
  leftblock.height('auto');
  rightblock.height('auto');
  if ($(window).width() > 767)
  {
    var maxHeight = Math.max(leftblock.height(), rightblock.height());
    leftblock.height(maxHeight);
    rightblock.height(maxHeight);
  }
});

每当窗口调整大小或加载时,它会将高度重置为自动,如果窗口宽度超出768断点,则会将两个高度设置为两者中的较大者