【问题标题】:How to set minimum width for Cards in Bootstrap?如何在 Bootstrap 中设置卡片的最小宽度?
【发布时间】:2020-04-17 02:39:32
【问题描述】:

我正在使用Bootstrap卡片,当我为卡片设置最小宽度时,当我减小窗口宽度时卡片重叠,如何确保第三张卡片占据下一行(避免重叠)?

<div class="container" style="margin-top:3em;">
      <div class="card-columns">
        <div class="card" style="min-width: 300px;">
          <img src="images/nasoclearSalineNasalSpray.png" class="card-img-top" style="max-height:500px;"alt="images">
          <div class="card-body">
            <h5 class="card-title">Special title treatment</h5>
            <p class="card-text">With supporting text below as a natural lead-in to additional content.</p>
            <a href="#" class="btn btn-primary">Go somewhere</a>
          </div>
        </div>

        <div class="card" style="min-width: 300px;">
          <img src="images/pedialytePowder.png" class="card-img-top" style="max-height:500px;" alt="images">
          <div class="card-body">
            <h5 class="card-title">Special title treatment</h5>
            <p class="card-text">With supporting text below as a natural lead-in to additional content.</p>
            <a href="#" class="btn btn-primary">Go somewhere</a>
          </div>
        </div>

        <div class="card" style="min-width: 300px;">
          <img src="images/chericofSuspension.png" class="card-img-top" style="max-height:500px;"alt="images">
          <div class="card-body">
            <h5 class="card-title">Special title treatment</h5>
            <p class="card-text">With supporting text below as a natural lead-in to additional content.</p>
            <a href="#" class="btn btn-primary">Go somewhere</a>
          </div>
        </div>
      </div>
    </div>

【问题讨论】:

  • 最好在 div 中使用引导类 col-lg-4 col-md-6 col-sm-12 和类 card 并在其父级上将 card-columns 替换为 row ... 对于您的问题,删除内联 CSS 并尝试这个:.card { max-width:32%; min-width:300px; float:left; margin-right:1%; } .card-columns { display:block; column-count:inherit; border:1px dotted red }
  • 为什么不在引导列中使用卡,例如 col-sm-6
  • 实现这一点的一种方法是使用 flex-wrap: wrap;并设置最大宽度,
  • @AkberIqbal,由于我使用 Handlebars 生成模板,因此我不能将行用作父项,将列用作子项。

标签: css twitter-bootstrap sass bootstrap-4


【解决方案1】:
<div class="container" style="margin-top:3em;">
  <div class="card-columns custom-columns">
    <div class="card">
      <img src="images/nasoclearSalineNasalSpray.png" class="card-img-top" style="max-height:500px;"alt="images">
      <div class="card-body">
        <h5 class="card-title">Special title treatment</h5>
        <p class="card-text">With supporting text below as a natural lead-in to additional content.</p>
        <a href="#" class="btn btn-primary">Go somewhere</a>
      </div>
    </div>

    <div class="card">
      <img src="images/pedialytePowder.png" class="card-img-top" style="max-height:500px;" alt="images">
      <div class="card-body">
        <h5 class="card-title">Special title treatment</h5>
        <p class="card-text">With supporting text below as a natural lead-in to additional content.</p>
        <a href="#" class="btn btn-primary">Go somewhere</a>
      </div>
    </div>

    <div class="card">
      <img src="images/chericofSuspension.png" class="card-img-top" style="max-height:500px;"alt="images">
      <div class="card-body">
        <h5 class="card-title">Special title treatment</h5>
        <p class="card-text">With supporting text below as a natural lead-in to additional content.</p>
        <a href="#" class="btn btn-primary">Go somewhere</a>
      </div>
    </div>
  </div>
</div>

移除宽度 min-width:300px;

添加了 .custom-columns

    @media (max-width: 700px) {
        .card-columns.custom-columns {
            column-count: 1;
        }
    }
    @media (min-width: 700px) {
        .card-columns.custom-columns {
            column-count: 2;
        }
    }
    @media (min-width: 1000px) {
        .card-columns.custom-columns {
            column-count: 3;
        }
    }
    @media (min-width: 1400px) {
        .card-columns.custom-columns {
            column-count: 4;
        }
    }

【讨论】:

    【解决方案2】:

    如果您使用引导程序,则使用 i 的网格系统。

     <div class="container" style="margin-top:3em;">
        <div class="row">
          <div class="col-lg-4 col-md-6 col-sm-12">
            <div class="card">
              <img src="images/nasoclearSalineNasalSpray.png" class="card-img-top" style="max-height:500px;"alt="images">
              <div class="card-body">
                <h5 class="card-title">Special title treatment</h5>
                <p class="card-text">With supporting text below as a natural lead-in to additional content.</p>
                <a href="#" class="btn btn-primary">Go somewhere</a>
              </div>
            </div>
          </div>
          <div class="col-lg-4 col-md-6 col-sm-12">
            <div class="card">
              <img src="images/pedialytePowder.png" class="card-img-top" style="max-height:500px;" alt="images">
              <div class="card-body">
                <h5 class="card-title">Special title treatment</h5>
                <p class="card-text">With supporting text below as a natural lead-in to additional content.</p>
                <a href="#" class="btn btn-primary">Go somewhere</a>
              </div>
            </div>
          </div>
          <div class="col-lg-4 col-md-6 col-sm-12">
            <div class="card">
              <img src="images/chericofSuspension.png" class="card-img-top" style="max-height:500px;"alt="images">
              <div class="card-body">
                <h5 class="card-title">Special title treatment</h5>
                <p class="card-text">With supporting text below as a natural lead-in to additional content.</p>
                <a href="#" class="btn btn-primary">Go somewhere</a>
              </div>
            </div>
          </div>
        </div>
      </div>

    【讨论】:

    • 我更喜欢你的回答:你尊重 de Bootstrap 精神。一切都是在 Bootstrap 中解决这个问题的,所以不需要额外的代码。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-23
    • 1970-01-01
    相关资源
    最近更新 更多