首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >bootstrap中的7个相等列

bootstrap中的7个相等列
EN

Stack Overflow用户
提问于 2014-02-22 21:40:05
回答 17查看 99.6K关注 0票数 81

我想知道是否有人能解释一下我如何在bootstrap中得到7个相等的列?我正在试着做一个日历。这段代码似乎做了5件事:

代码语言:javascript
复制
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>

我的主要内容有以下类,所以我希望这7列包含在这个类中:

col-lg-12

有没有人能解释一下这是否可能,或者我是否必须坚持使用偶数?

EN

回答 17

Stack Overflow用户

回答已采纳

发布于 2014-02-22 22:06:33

那么,您可能需要使用CSS3 @media width来覆盖列的查询。

这是我创建一个7列网格系统的尝试:

代码语言:javascript
复制
<div class="container">
  <div class="row seven-cols">
    <div class="col-md-1">Col 1</div>
    <div class="col-md-1">Col 2</div>
    <div class="col-md-1">Col 3</div>
    <div class="col-md-1">Col 4</div>
    <div class="col-md-1">Col 5</div>
    <div class="col-md-1">Col 6</div>
    <div class="col-md-1">Col 7</div>
  </div>
</div>
代码语言:javascript
复制
@media (min-width: 768px){
  .seven-cols .col-md-1,
  .seven-cols .col-sm-1,
  .seven-cols .col-lg-1  {
    width: 100%;
    *width: 100%;
  }
}

@media (min-width: 992px) {
  .seven-cols .col-md-1,
  .seven-cols .col-sm-1,
  .seven-cols .col-lg-1 {
    width: 14.285714285714285714285714285714%;
    *width: 14.285714285714285714285714285714%;
  }
}

/**
 *  The following is not really needed in this case
 *  Only to demonstrate the usage of @media for large screens
 */    
@media (min-width: 1200px) {
  .seven-cols .col-md-1,
  .seven-cols .col-sm-1,
  .seven-cols .col-lg-1 {
    width: 14.285714285714285714285714285714%;
    *width: 14.285714285714285714285714285714%;
  }
}

width的值来自:

代码语言:javascript
复制
width = 100% / 7 column-number = 14.285714285714285714285714285714%

工作演示- (jsbin)

运行代码片段并单击“完整页面”。

代码语言:javascript
复制
.col-md-1 {
  background-color: gold;
}

@media (min-width: 768px){
  .seven-cols .col-md-1,
  .seven-cols .col-sm-1,
  .seven-cols .col-lg-1  {
    width: 100%;
    *width: 100%;
  }
}


@media (min-width: 992px) {
  .seven-cols .col-md-1,
  .seven-cols .col-sm-1,
  .seven-cols .col-lg-1 {
    width: 14.285714285714285714285714285714%;
    *width: 14.285714285714285714285714285714%;
  }
}


@media (min-width: 1200px) {
  .seven-cols .col-md-1,
  .seven-cols .col-sm-1,
  .seven-cols .col-lg-1 {
    width: 14.285714285714285714285714285714%;
    *width: 14.285714285714285714285714285714%;
  }
}
代码语言:javascript
复制
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.4.1/css/bootstrap.min.css" rel="stylesheet"/>

<div class="container">
  <div class="row seven-cols">
    <div class="col-md-1">Col 1</div>
    <div class="col-md-1">Col 2</div>
    <div class="col-md-1">Col 3</div>
    <div class="col-md-1">Col 4</div>
    <div class="col-md-1">Col 5</div>
    <div class="col-md-1">Col 6</div>
    <div class="col-md-1">Col 7</div>
  </div>
</div>

其他选项

此外,您还可以使用 (更改@grid-columns,...)构建自己的7列版本的Twitter Bootstrap。

如果你使用的是less编译器,你可以下载less版本的Twitter Bootstrap (从Github)和edit the variables.less文件。

票数 151
EN

Stack Overflow用户

发布于 2015-12-03 14:22:20

几乎等同于quick解决方案。没有自定义的css。

代码语言:javascript
复制
.cell {
  border: 1px solid black;
  text-align: center;
  flex-basis: 33.3333%;
  flex-grow: 0;
  flex-shrink: 0;
  -webkit-box-flex: 0;
  -webkit-tap-highlight-color: #0000;
}
代码语言:javascript
复制
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" rel="stylesheet"/>


<div class="row">
  <div class="col-md-4">
    <div class="row">
    	<div class="col-md-4"></div> <!-- this column empty -->
    	<div class="col-md-4 cell"> 1 </div>
    	<div class="col-md-4 cell"> 2 </div>
    </div>
  </div>
  <div class="col-md-8">
    <div class="row">
    	<div class="col-md-2 cell"> 3 </div>
    	<div class="col-md-2 cell"> 4 </div>
    	<div class="col-md-2 cell"> 5 </div>
    	<div class="col-md-2 cell"> 6 </div>
    	<div class="col-md-2 cell"> 7 </div>
    	<div class="col-md-2"></div> <!-- this column empty -->
    </div>
  </div>
</div>

票数 33
EN

Stack Overflow用户

发布于 2017-10-20 04:40:29

升级到Bootstrap 4可能是个不错的选择。

附带了一个用于等宽列的类。

代码语言:javascript
复制
<div class="row">
  <div class="col"></div>
  <div class="col"></div>
  <div class="col"></div>
  <div class="col"></div>
  <div class="col"></div>
  <div class="col"></div>
  <div class="col"></div>
</div>

https://v4-alpha.getbootstrap.com/layout/grid/#equal-width

小贴士:如果你想在screen低于md的时候换行换行,在每一列后面添加这个div:

代码语言:javascript
复制
<div class='w-100 d-md-none'></div>

.w-100换行,.d- md - on在比md更宽的屏幕上隐藏div

因此,它将提供:

代码语言:javascript
复制
<div class="row">
  <div class="col"></div>
  <div class='w-100 d-md-none'></div>
  <div class="col"></div>
  <div class='w-100 d-md-none'></div>
  <div class="col"></div>
  <div class='w-100 d-md-none'></div>
  <div class="col"></div>
  <div class='w-100 d-md-none'></div>
  <div class="col"></div>
  <div class='w-100 d-md-none'></div>
  <div class="col"></div>
  <div class='w-100 d-md-none'></div>
  <div class="col"></div>
</div>
票数 23
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21955088

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档