【问题标题】:Grid to display columns as per the specified height using bootstrap in React app在 React 应用程序中使用引导程序根据指定高度显示列的网格
【发布时间】:2019-07-15 06:25:46
【问题描述】:

我正在动态显示一个大型菜单,为此我想根据要求创建一个网格。这里有几点需要考虑:

  1. 我想分列显示数据,多余的列会自动获取 如果数据增加,则添加。
  2. 大型菜单的高度将被固定,例如300px 和列数据将得到 根据巨型菜单高度和列内容添加。 (如果这么多 空间不可用,那么该 div 将自动创建另一列)
  3. 一列可能包含多个小列。
  4. 数据将使用 json 自动显示在列中。

我尝试了引导程序的行列结构,但是数据按行水平显示,我希望数据按列垂直显示。

我正在使用数组上的 .map 动态创建这样的结构

<div className="row">
  <div className="col-md-4"></div>
  <div className="col-md-4"></div>
  <div className="col-md-4"></div>
  <div className="col-md-4"></div>
  <div className="col-md-4"></div>
  <div className="col-md-4"></div>
  <div className="col-md-4"></div>
</div>

更多详情:

【问题讨论】:

    标签: css reactjs bootstrap-4


    【解决方案1】:

    首先,引导程序希望您将布局分成 12 列。您当前的 DOM 使用 28 列 (4 * 7)。它在 UI 中的行为可能会很奇怪。

    您只需要考虑行和列,就像引导程序那样。这是一个尝试模仿您的屏幕截图的示例结构。您需要根据需要更改col-md-*

    div {
      background: lightblue;
      border: 1px solid;
    }
    <link href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
    
    <div class="container-fluid">
      <div class="row">
        <div class="col">1</div>
        <div class="col">2
          <div class="row">1</div>
          <div class="row">2</div>
          <div class="row">3</div>
        </div>
        <div class="col">
          3
          <div class="row">1</div>
          <div class="row">2</div>
          <div class="row">3</div>
          <div class="row">4</div>
        </div>
      </div>
    </div>

    【讨论】:

    • 是的,但问题是我没有手动执行此代码。我在数组的 .map 函数中形成这个,我需要根据巨型菜单的高度来决定列内容。
    • 那么请分享与您的问题相关的代码。
    猜你喜欢
    • 2016-03-05
    • 2019-10-16
    • 2019-11-30
    • 2018-05-03
    • 1970-01-01
    • 2010-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多