Twitter bootstrap 3 列之间的引导间隙

Twitter bootstrap 3 列之间的引导间隙,twitter-bootstrap-3,Twitter Bootstrap 3,见: 我使用bootstrap 3进行响应性布局。我得到这些产品之间的巨大差距,因为有时产品标题占据两行,并且div的高度比其他产品高一点。有人知道如何解决这个问题?有两种简单的方法,每种方法都有各自的缺点: 1) 设置产品容器的固定高度:。产品{height:300px}。只有当你知道你的产品描述会有最多行时,这才有效 2) 将每一行产品放入它们自己的。行:…只有当您认为行不动态(例如始终为3个accross)时,这才有效,从您的示例来看,我认为您不是 一种更动态的处理方法是一些javascr

见:
我使用bootstrap 3进行响应性布局。我得到这些产品之间的巨大差距,因为有时产品标题占据两行,并且div的高度比其他产品高一点。有人知道如何解决这个问题?

有两种简单的方法,每种方法都有各自的缺点:

1) 设置产品容器的固定高度:
。产品{height:300px}
。只有当你知道你的产品描述会有最多行时,这才有效

2) 将每一行产品放入它们自己的
。行
只有当您认为行不动态(例如始终为3个accross)时,这才有效,从您的示例来看,我认为您不是


一种更动态的处理方法是一些javascript,它读取给定行(不是.row)中最高的.product容器的计算高度,并将该高度分配给它的邻居。。。但目前我无法理解这一点:)

两种简单的方法都有各自的缺点:

1) 设置产品容器的固定高度:
。产品{height:300px}
。只有当你知道你的产品描述会有最多行时,这才有效

2) 将每一行产品放入它们自己的
。行
只有当您认为行不动态(例如始终为3个accross)时,这才有效,从您的示例来看,我认为您不是


一种更动态的处理方法是一些javascript,它读取给定行(不是.row)中最高的.product容器的计算高度,并将该高度分配给它的邻居。。。但目前我无法理解:)

您的主要问题是没有正确使用网格系统

您的问题是您有一个
div.row
,然后将所有产品
放入其中。通常,一个
.row
中每种大小最多只能有12列。你可以做得更多,但前提是你必须确保任何特定尺寸的总尺寸是12倍,否则你最终会得到悬空的盒子。正如一开始所述,33合一
。行
绝对不是正确的方法

这是对以下内容的补充:

  • .row fluid
    在引导程序3中不再存在。现在是
    .row
  • 对于基本的工作示例,您不应该在
    中包装列,代码如下:

    <div class="row">
      <div class="col-xs-6">
        <div class="row">
          <div class="col-md-6">
            CONTENT...
          </div>
          <div class="col-md-6">
            CONTENT...
          </div>
        </div>
      </div>
      <div class="col-xs-6">
        <div class="row">
          <div class="col-md-6">
            CONTENT...
          </div>
          <div class="col-md-6">
            CONTENT...
          </div>
        </div>
      </div>
    </div>
    
    
    内容。。。
    内容。。。
    内容。。。
    内容。。。
    
    采用不同的方法处理上述解决方案,无需所有嵌套:

    
    内容。。。
    内容。。。
    内容。。。
    内容。。。
    
    您的主要问题是没有正确使用网格系统

    您的问题是您有一个
    div.row
    ,然后将所有产品
    放入其中。通常,一个
    .row
    中每种大小最多只能有12列。你可以做得更多,但前提是你必须确保任何特定尺寸的总尺寸是12倍,否则你最终会得到悬空的盒子。正如一开始所述,33合一
    。行
    绝对不是正确的方法

    这是对以下内容的补充:

  • .row fluid
    在引导程序3中不再存在。现在是
    .row
  • 对于基本的工作示例,您不应该在
    中包装列,代码如下:

    <div class="row">
      <div class="col-xs-6">
        <div class="row">
          <div class="col-md-6">
            CONTENT...
          </div>
          <div class="col-md-6">
            CONTENT...
          </div>
        </div>
      </div>
      <div class="col-xs-6">
        <div class="row">
          <div class="col-md-6">
            CONTENT...
          </div>
          <div class="col-md-6">
            CONTENT...
          </div>
        </div>
      </div>
    </div>
    
    
    内容。。。
    内容。。。
    内容。。。
    内容。。。
    
    采用不同的方法处理上述解决方案,无需所有嵌套:

    
    内容。。。
    内容。。。
    内容。。。
    内容。。。
    
    只需为每个div使用
    向左拉
    类,这样它们就会自动向左浮动或

    每一排都像

    <div class="row">
        <div class="col-md-2">prod1</div>
        <div class="col-md-2">prod2</div>
        <div class="col-md-2">prod3</div>
    </div>
    <div class="row">
        <div class="col-md-2">prod4</div>
        <div class="col-md-2">prod5</div>
        <div class="col-md-2">prod6</div>
    </div>
    
    
    产品1
    产品2
    prod3
    产品4
    产品5
    prod6
    
    只需为每个div使用
    向左拉
    类,这样它们就会自动向左浮动或

    每一排都像

    <div class="row">
        <div class="col-md-2">prod1</div>
        <div class="col-md-2">prod2</div>
        <div class="col-md-2">prod3</div>
    </div>
    <div class="row">
        <div class="col-md-2">prod4</div>
        <div class="col-md-2">prod5</div>
        <div class="col-md-2">prod6</div>
    </div>
    
    
    产品1
    产品2
    prod3
    产品4
    产品5
    prod6
    
    确保您使用的是最新版本的引导(当前为v3.2.0)

    新添加的响应实用程序将帮助您完成此任务,如文档中所述

    在“行”之间插入此div:

    <!-- Add the extra clearfix for only the required viewport -->
    <div class="clearfix visible-xs-block"></div>
    
    如果所有这些对您来说都是太多的标记,您可以使用jQuery来自动进行调整,如下所示:

    var row=$('.row');
    $.each(row, function() {
        var maxh=0;
        $.each($(this).find('div[class^="col-"]'), function() {
            if($(this).height() > maxh)
                maxh=$(this).height();
        });
        $.each($(this).find('div[class^="col-"]'), function() {
            $(this).height(maxh);
        });
    });
    

    确保您使用的是最新版本的引导(当前为v3.2.0)

    新添加的响应实用程序将帮助您完成此任务,如文档中所述

    在“行”之间插入此div:

    <!-- Add the extra clearfix for only the required viewport -->
    <div class="clearfix visible-xs-block"></div>
    
    如果所有这些对您来说都是太多的标记,您可以使用jQuery来自动进行调整,如下所示:

    var row=$('.row');
    $.each(row, function() {
        var maxh=0;
        $.each($(this).find('div[class^="col-"]'), function() {
            if($(this).height() > maxh)
                maxh=$(this).height();
        });
        $.each($(this).find('div[class^="col-"]'), function() {
            $(this).height(maxh);
        });
    });
    

    很抱歉投了反对票。答案中的所有内容都很好,但第一个语句one.row最多应该包含12列,因此将所有col放在一行是“完全错误的”——嗯,这就是完全错误的。这就是网格系统的美妙之处,它的一个基本租户能够在不同的断点处拥有不同的布局。即使是您的示例也表明,因为在xs/sm大小下,内行将有两个元素,它们总共代表24列。虽然在较小的屏幕大小下,该“行”的总列数实际上是24列,但对于默认引导,每个
    仅包含12列,并且应该只包含12列,这就是我要说的。如果每个
    div.row内的总列数