我想在我正在构建的页面上有5个相等的列,我似乎无法理解5列网格在这里是如何使用的: http://web.archive.org/web/20120416024539/http://domain7.com/mobile/tools/bootstrap/responsive

上面演示的五列网格是twitter引导框架的一部分吗?


当前回答

创建5个类为col-sm-2的元素,并在第一个元素中添加类为col-sm-offset-1

<div class="equal - row-fluid"> < div class = " span2 " > < / div > < div class = " span2 " > < / div > < div class = " span2 " > < / div > < div class = " span2 " > < / div > < div class = " span2 " > < / div > < / div > .equal .span2 { 宽度:17.9%; }

附注:这将不是全宽度(它将从屏幕的左右稍微缩进)。

代码应该看起来像这样。

其他回答

使用5个div,类为span2,并给第一个类为offset1。

<div class="row-fluid">
    <div class="span2 offset1"></div>
    <div class="span2"></div>
    <div class="span2"></div>
    <div class="span2"></div>
    <div class="span2"></div>
</div>

瞧! 五列等距居中。


在引导3.0中,这段代码看起来像

<div class="row">
    <div class="col-md-2 col-md-offset-1"></div>
    <div class="col-md-2"></div>
    <div class="col-md-2"></div>
    <div class="col-md-2"></div>
    <div class="col-md-2"></div>
</div>

更新

因为bootstrap 4.0默认使用Flexbox:

<div class="row">
    <div class="col"></div>
    <div class="col"></div>
    <div class="col"></div>
    <div class="col"></div>
    <div class="col"></div>
</div>

在我的例子中,仅仅使用col并没有得到正确的效果。所有项都将出现在彼此旁边,我不想用PHP计算出什么时候放置行元素。

那么如何创建一个类来扩展我们的引导col特性呢?如果人们想知道如何在不使用col类的情况下使5列与Bootstrap一起工作。

插件/ bootstrap.less:

@media @md {
    .col-md-2-4 {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
}

我将其命名为.col-md-2-4,因为Bootstrap的12个网格布局除以5等于2.4。

现在你可以创建一个5列的布局。也可以与其他断点列类结合使用:

<div class="col-6 col-sm-4 col-md-2-4">
   1/5 column
</div>

注意,我添加了一个媒体查询,语句周围的代码更少。因此,如果您想添加其他列断点类,请确保围绕它使用正确的媒体查询。

对于twitter bootstrap 3,这是最简单的方法来实现这一点:

<section class="col col-sm-3" style="width: 20%;">
<section class="col col-sm-3" style="width: 20%;">
<section class="col col-sm-3" style="width: 20%;">
<section class="col col-sm-3" style="width: 20%;">
<section class="col col-sm-3" style="width: 20%;">

自举网格系统分为12个网格。所以我把它分成两个网格(7+5)。这7和5也包含满12格。这就是为什么我分开了7(4+4+4)和5(6+6),这样就可以得到所有的内容,很简单

HTML

<div class="col-sm-12">
  <div class="row">
    <div class="col-sm-7 five-three">
      <div class="row">
        <div class="col-sm-4">
          Column 1
        </div>
        <div class="col-sm-4">
          Column 2
        </div>
        <div class="col-sm-4">
          Column 3
        </div>
      </div>
    </div>
    <div class="col-sm-5 five-two">
      <div class="row">
        <div class="col-sm-6">
          Col 4
        </div>
        <div class="col-sm-6">
          Col 5
        </div>
      </div>
    </div>
  </div>
</div>

CSS

div.col-sm-7.five-three {
  width: 60% !important;
}
div.col-sm-5.five-two {
  width: 40% !important;
}

用于引导4

Bootstrap 4现在默认使用flexbox,所以你可以直接使用它的神奇力量。查看自动布局列,根据嵌套的列的数量动态调整宽度。

这里有一个例子:

<div class="row">
   <div class="col">
      1 of 5
   </div>
   <div class="col">
      2 of 5
   </div>
   <div class="col">
      3 of 5
   </div>
   <div class="col">
      4 of 5
   </div>
   <div class="col">
      5 of 5
   </div>
</div>

演示工作


引导3

一个奇妙的全宽5列布局与Twitter引导创建在这里。

这是迄今为止最先进的解决方案,因为它与Bootstrap 3无缝地工作。它允许您一遍又一遍地重用这些类,并与当前的Bootstrap类一起用于响应式设计。

CSS: 将其添加到全局样式表中,甚至添加到bootstrap.css文档的底部。

.col-xs-5ths,
.col-sm-5ths,
.col-md-5ths,
.col-lg-5ths {
    position: relative;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;
}

.col-xs-5ths {
    width: 20%;
    float: left;
}

@media (min-width: 768px) {
    .col-sm-5ths {
        width: 20%;
        float: left;
    }
}

@media (min-width: 992px) {
    .col-md-5ths {
        width: 20%;
        float: left;
    }
}

@media (min-width: 1200px) {
    .col-lg-5ths {
        width: 20%;
        float: left;
    }
}

好好利用它!例如,如果你想创建一个div元素,它在中等屏幕上表现为五列布局,而在较小的屏幕上表现为两列布局,你只需要使用这样的东西:

<div class="row">
    <div class="col-md-5ths col-xs-6">
       ...
    </div>
</div>

工作演示-展开框架,看看列变得有响应。

另一个演示-将新的col-*-5ths类与其他类合并,如col-*-3和col-*-2。调整帧的大小,在响应视图中看到它们都改变为col-xs-6。