You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将产品卡片对齐为网格布局?前三个已对齐,后续需调整

修复Bootstrap产品卡片网格布局问题

我一眼就看出问题所在啦——你现在的代码里,每添加一个新卡片就错误地闭合了<div class="row">标签,导致后面的卡片都不在同一个网格容器里,自然排布混乱。Bootstrap的网格系统要求同一行的列(col)必须放在同一个row容器内,这样它才能自动按每行3个(col-md-4)的规则排列。

修复后的完整代码

<div class="row">
  <div class="col-md-4 mb-5">
    <h2>Ултразвучни системи:</h2>
  </div>
</div>
<!-- /.row -->
<div class="row">
  <!-- 第一组卡片 -->
  <div class="col-md-4 mb-5 d-flex align-items-stretch">
    <div class="card h-100">
      <img class="card-img-top" src="img\herai10.jpg" alt="">
      <div class="card-body">
        <h4 class="card-title">HERA I10</h4>
        <p class="card-text">Акушерство, Гинекологија.</p>
      </div>
      <div class="card-footer">
        <a href="#" class="btn btn-primary">Спецификации</a>
      </div>
    </div>
  </div>
  <div class="col-md-4 mb-5 d-flex align-items-stretch">
    <div class="card h-100">
      <img class="card-img-top" src="img\heraw10.jpg" alt="">
      <div class="card-body">
        <h4 class="card-title">HERA W10</h4>
        <p class="card-text">Акушерство, Гинекологија.</p>
      </div>
      <div class="card-footer">
        <a href="#" class="btn btn-primary">Спецификации</a>
      </div>
    </div>
  </div>
  <div class="col-md-4 mb-5 d-flex align-items-stretch">
    <div class="card h-100">
      <img class="card-img-top" src="img\rs85.jpg" alt="">
      <div class="card-body">
        <h4 class="card-title">RS85</h4>
        <p class="card-text">Радиологија.</p>
      </div>
      <div class="card-footer">
        <a href="#" class="btn btn-primary">Спецификации</a>
      </div>
    </div>
  </div>
  <!-- 第二组卡片 -->
  <div class="col-md-4 mb-5 d-flex align-items-stretch">
    <div class="card h-100">
      <img class="card-img-top" src="img\WS80A.jpg" alt="">
      <div class="card-body">
        <h4 class="card-title">WS80A with Elite</h4>
        <p class="card-text">Акушерство, Гинекологија.</p>
      </div>
      <div class="card-footer">
        <a href="#" class="btn btn-primary">Спецификации</a>
      </div>
    </div>
  </div>
  <div class="col-md-4 mb-5 d-flex align-items-stretch">
    <div class="card h-100">
      <img class="card-img-top" src="img\rs80a.jpg" alt="">
      <div class="card-body">
        <h4 class="card-title">RS80A with Prestige</h4>
        <p class="card-text">Радиологија.</p>
      </div>
      <div class="card-footer">
        <a href="#" class="btn btn-primary">Спецификации</a>
      </div>
    </div>
  </div>
  <div class="col-md-4 mb-5 d-flex align-items-stretch">
    <div class="card h-100">
      <img class="card-img-top" src="img\hs70a.jpg" alt="">
      <div class="card-body">
        <h4 class="card-title">HS70A with Prime</h4>
        <p class="card-text">Акушерство, Гинекологија, Кардиоваскуларно, Радиологија.</p>
      </div>
      <div class="card-footer">
        <a href="#" class="btn btn-primary">Спецификации</a>
      </div>
    </div>
  </div>
  <!-- 第三组卡片 -->
  <div class="col-md-4 mb-5 d-flex align-items-stretch">
    <div class="card h-100">
      <img class="card-img-top" src="img\hs60.jpg" alt="">
      <div class="card-body">
        <h4 class="card-title">HS60</h4>
        <p class="card-text">Акушерство, Гинекологија, Кардиоваскуларно.</p>
      </div>
      <div class="card-footer">
        <a href="#" class="btn btn-primary">Спецификации</a>
      </div>
    </div>
  </div>
  <div class="col-md-4 mb-5 d-flex align-items-stretch">
    <div class="card h-100">
      <img class="card-img-top" src="img\hs50.jpg" alt="">
      <div class="card-body">
        <h4 class="card-title">HS50</h4>
        <p class="card-text">Акушерство, Гинекологија, Кардиоваскуларно.</p>
      </div>
      <div class="card-footer">
        <a href="#" class="btn btn-primary">Спецификации</a>
      </div>
    </div>
  </div>
  <div class="col-md-4 mb-5 d-flex align-items-stretch">
    <div class="card h-100">
      <img class="card-img-top" src="img\hs40.jpg" alt="">
      <div class="card-body">
        <h4 class="card-title">HS40</h4>
        <p class="card-text">Акушерство, Гинекологија, Кардиоваскуларно.</p>
      </div>
      <div class="card-footer">
        <a href="#" class="btn btn-primary">Спецификации</a>
      </div>
    </div>
  </div>
  <!-- 第四组卡片 -->
  <div class="col-md-4 mb-5 d-flex align-items-stretch">
    <div class="card h-100">
      <img class="card-img-top" src="img\hs30.jpg" alt="">
      <div class="card-body">
        <h4 class="card-title">HS30</h4>
        <p class="card-text">Акушерство, Гинекологија, Кардиоваскуларно.</p>
      </div>
      <div class="card-footer">
        <a href="#" class="btn btn-primary">Спецификации</a>
      </div>
    </div>
  </div>
  <div class="col-md-4 mb-5 d-flex align-items-stretch">
    <div class="card h-100">
      <img class="card-img-top" src="img\hm70a.jpg" alt="">
      <div class="card-body">
        <h4 class="card-title">HM70A with Plus</h4>
        <p class="card-text">Акушерство, Гинекологија, Кардиоваскуларно, Точка на Грижење.</p>
      </div>
      <div class="card-footer">
        <a href="#" class="btn btn-primary">Спецификации</a>
      </div>
    </div>
  </div>
  <div class="col-md-4 mb-5 d-flex align-items-stretch">
    <div class="card h-100">
      <img class="card-img-top" src="img\h60.jpg" alt="">
      <div class="card-body">
        <h4 class="card-title">H60</h4>
        <p class="card-text">Акушерство, Гинекологија.</p>
      </div>
      <div class="card-footer">
        <a href="#" class="btn btn-primary">Спецификации</a>
      </div>
    </div>
  </div>
  <!-- 第五组卡片 -->
  <div class="col-md-4 mb-5 d-flex align-items-stretch">
    <div class="card h-100">
      <img class="card-img-top" src="img\sonoacer7.jpg" alt="">
      <div class="card-body">
        <h4 class="card-title">Sonoace R7</h4>
        <p class="card-text">Акушерство, Гинекологија.</p>
      </div>
      <div class="card-footer">
        <a href="#" class="btn btn-primary">Спецификации</a>
      </div>
    </div>
  </div>
</div>
<!-- /.row -->

关键修复点

  • 把所有产品卡片的<div class="col-md-4">都放在同一个<div class="row">容器里,Bootstrap会自动计算每行容纳3个col-md-4(因为12列网格,4*3=12),超出后自动换行。
  • 移除了原来每个卡片后面多余的</div>(也就是错误闭合row的标签),避免破坏网格结构。
  • 保留了你原来的d-flex align-items-stretch和card h-100类,确保所有卡片高度一致,不会出现参差不齐的情况。

这样修改后,所有卡片就会和前三个一样,整齐地排成每行3个的网格布局啦!

内容的提问来源于stack exchange,提问作者Bojan Vasoski

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 07:13:34