【问题标题】:Do you need to use Bootstrap's "container" and "row" if your content is to span the whole width?如果您的内容要跨越整个宽度,您是否需要使用引导程序“容器”和“行”?
【发布时间】:2017-08-27 12:50:11
【问题描述】:

我认为Bootstrap 3和4的标准是

<div class="container">
    <div class="row">
        <div class="col-md-4"> ... </div>
        <div class="col-md-8"> ... </div>   <!-- just add up to 12 -->
    </div>
</div>

但是,如果您有一个 divtableform 或任何元素,您打算让它跨越整个宽度怎么办?那么您是否需要containerrowcol-md-12 才能使整个页面在Bootstrap 3 和4 的样式规则下很好地显示?

附:如果可能,请指向或引用与此相关的官方 Bootstrap 文档。

【问题讨论】:

    标签: twitter-bootstrap twitter-bootstrap-3 bootstrap-4 twitter-bootstrap-4


    【解决方案1】:

    简答:你确实需要使用container,但你不需要需要使用row。 p>

    您可以将元素直接放在containercontainer-fluid 中。您不需要使用网格(.row.col-*),容器单独可以用作内容容器强>。仅在需要响应式 12 单元结构时才使用网格。

    例如,这是有效的 Bootstrap...

    <div class="container">
       <h2>Hello World</h2>
       <p class="lead">Some other content...</p>
    </div>
    

    来自Bootstrap docs...

    "Bootstrap 需要一个包含元素来包装网站内容和 容纳我们的网格系统。”

    因此,container 的目的有两个:1)“容纳网格系统”,以及 2)“包装网站内容”。但是,当您使用网格(.row.col-*)时,需要容器来包装 .row

    即使basic starter template 也使用container 而没有网格。

    总结...

    • 您可以单独使用.container.container-fluid 来包含元素和页面内容。
    • 如果您使用网格(.row.col-*),.row 必须在 .container.container-fluid 内,.col-* 必须在 .row 内。

    【讨论】:

    • 我认为你的答案更准确......如果我添加一个包装器div 和类row 然后将col-md-12 放在table 上,那么表格的边框太宽了...触摸页面的边缘...如果我删除 rowcol-md-12 的东西那么它是完美的
    【解决方案2】:

    您应该将.container-fluid 添加到您的包装div。您应该将表格、div 或表单包装在一个 div 中,并将 .container-fluid 类添加到其中。

    The official bootstrap documentation on grid system

    【讨论】:

      【解决方案3】:

      如果您希望您的内容跨越文档的整个宽度,您应该使用.container-fluid 类。如果没有这个类,.row 的负边距将导致水平滚动。

      您可以省略 container-fluid row,但这可能会在使用其他 Bootstrap 组件时导致意外结果。

      .col-md-4 {
        background: red;
      }
      
      .col-md-8 {
        background: green;
      }
      <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/>
      
      <div class="container-fluid">
        <div class="row">
          <div class="col-md-4"> ... </div>
          <div class="col-md-8"> ... </div>
        </div>
      </div>

      【讨论】:

      • 所以只需在tabledivform 上使用.container-fluid?你需要row吗?
      • 要以 Bootstrap 方式执行此操作,您可以使用 .container-fluid &gt; .row &gt; .col-XX-XX。我认为您不会在文档中找到有关以其他方式进行操作的任何内容。
      • 所以即使是一个div、table或者form要跨越整个宽度,也要使用.container-fluid &gt; .row &gt; .col-md-12,也就是总是有这3层。所以如果你把类col-md-12放在formtable上,那么你需要2个额外的包装器吗?
      • 是的,没错。您不能使用没有行的列。你不能使用没有容器的行。你应该同时使用这三个。
      【解决方案4】:

      使用流体容器跨越父级的整个宽度。

      【讨论】:

      • Bootstrap 中没有流体容器
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-05-12
      • 2014-04-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多