当前位置: 首页 > 面试题库 >

Twitter bootstrap 3两列全高

云京
2023-03-14
问题内容

我正在尝试使用twitter bootstrap 3 进行两列 全高 布局。似乎 twitter bootstrap 3
不支持全高布局。我想做的事:

  +-------------------------------------------------+
  |                     Header                      |
  +------------+------------------------------------+
  |            |                                    |
  |            |                                    |
  |Navigation  |         Content                    |
  |            |                                    |
  |            |                                    |
  |            |                                    |
  |            |                                    |
  |            |                                    |
  |            |                                    |
  +------------+------------------------------------+

如果内容增加,则导航也应增加。

  • 每个父母的身高100%无效,因为在某些情况下内容为一行。
  • 绝对位置似乎是错误的方法
  • display: tabledisplay:table-cell解决这个问题,但它是胜之不武

的HTML:

    <div class="container">
      <div class="row">
        <div class="col-md-3"></div>
        <div class="col-md-9"></div>
      </div>
    </div>

有没有办法使它与默认的 twitter bootstrap 3 类一起使用?


问题答案:

编辑: 在Bootstrap 4中,本机类_可以_生成全高列(DEMO),因为它们将其网格系统更改为flexbox。(请继续阅读Bootstrap3)

本机的Bootstrap3.0类不支持您描述的布局,但是,我们可以集成一些使用CSS表的自定义CSS 来实现此目的。

Bootply演示 /Codepen

标记:

<header>Header</header>
<div class="container">
    <div class="row">
        <div class="col-md-3 no-float">Navigation</div>
        <div class="col-md-9 no-float">Content</div>
    </div>
</div>

(相关)CSS

html,body,.container {
    height:100%;
}
.container {
    display:table;
    width: 100%;
    margin-top: -50px;
    padding: 50px 0 0 0; /*set left/right padding according to needs*/
    box-sizing: border-box;
}

.row {
    height: 100%;
    display: table-row;
}

.row .no-float {
  display: table-cell;
  float: none;
}

上面的代码将实现 全高列* (由于我们添加了自定义的css-table属性),并且对于 中等屏幕宽度 及以上的 屏幕
比例为1:3 (Navigation:Content)-(由于bootstrap的默认类是col-md -3和col-md-9)
*

注意:

1) 为了不起来引导的原生柱类,我们添加另一个类像混乱no-float的标记,只设置display:table- cellfloat:none这个类(如并列到列类本身)。

2) 如果我们只想将css-
table代码用于特定的断点(例如中等屏幕宽度及以上),但是对于移动屏幕,我们希望默认返回到通常的引导行为,而不是将自定义CSS封装在媒体查询说:

@media (min-width: 992px) {
  .row .no-float {
      display: table-cell;
      float: none;
  }
}

Codepen演示

现在,对于较小的屏幕,这些列的行为将类似于默认的引导程序列(每个引导列都变为全宽)。

3) 如果所有屏幕宽度都必须使用1:3的比例-那么从标记中删除bootstrap的col-md- *类可能更好,因为这不是要使用的方式。

Codepen演示



 类似资料:
  • 我试图用Twitter Bootstrap 3制作一个两列全高布局。Twitter Bootstrap 3似乎不支持全高度布局。我想做的事: 如果内容增长,也应该增长。 每个家长的身高100%不起作用,因为有一种情况,内容是一行。 似乎是错误的方式。 和解决了这个问题,但并不优雅。 有没有办法使用默认的TwitterBootstrap3类?

  • 问题内容: 我试图在这里按多列分组-每张桌子上一列。 在这种情况下,我想通过将每个客户的当前投资组合和现金加在一起来找到每个客户的最高投资组合价值,但是一个客户可能拥有多个投资组合,因此我需要每个客户的最高投资组合。 目前,在下面的代码中,我会为每个客户的顶级投资组合多次获得相同的客户(而不是按客户ID分组)。 问题答案: 首先,让我们做一些测试数据: 如果您不需要投资组合ID,这很容易: 由于您

  • 问题内容: 我有下表: 我想对两列(No1,No2)的分区求和,但是当两列中的值更改时,它也应该分组。示例为:AB = BA 这将是我的预期结果: 有任何想法吗? 问题答案: 使用和。

  • 问题内容: 我有第1列和第2列,并希望将它们合并到同一表的第3列中。如果第2列为空,则显示第1列的值;如果第1列为空,则它们显示第2列的数据。如果它们都为空,则显示为空。我尝试了两件事: 1)使用CONCAT 。 仅当两个列都不为null时,它才合并列。否则,它只是将null声明为null。 2)使用(第1栏+第2栏)。 。 没有显示所需的输出。 我正在用Java编写此代码。谢谢 问题答案: us

  • 我有两个表,分别是产品和采购: PRODUCTS表-将获得购买的所有新产品。这意味着表prroducts中不存在相同的productname。所有独特产品列表 采购表-具有唯一purchase_id的所有采购产品的列表。 > 如果要在PURCHASE中添加或插入值,表PRODUCTS将获得PURCHASE的所有值,但前提是PURCHASE中的productname不存在于PRODUCTS中的'pr

  • 问题内容: 如果我有这样的div布局: 这使得像这样: 如何确保两列与最深列的高度相同?列高可以根据内容量灵活调整,并具有白色背景。 问题答案: 一种非常简单的常用方法是使用Faux Columns。 您将拥有一个看起来像这样的结构: 实际上,您可以应用背景图像来向2列中的每列添加任何背景颜色,边框等。