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

设置Div内容位置:使同行Div的底部文本对齐

解决方案:让底部文本统一对齐水平线

这问题很常见,核心就是要让每个.testDiv里的底部文本(LineBot)固定在容器底部,不受上方内容高度变化的影响。我们可以借助Flex布局的margin-top: auto特性来实现,具体操作如下:

1. 修改容器CSS,开启垂直Flex布局

首先给.testDiv添加Flex相关属性,让它内部元素可以垂直方向排布,同时确保容器占满父级col-2的高度:

.testDiv {
  border: solid;
  border-width: thin;
  border-radius: 1rem;
  margin-top: 0.5rem;
  margin-right: 0.5rem;
  padding: 0.5rem;
  text-align: center;
  /* 新增Flex配置 */
  display: flex;
  flex-direction: column;
  height: 100%;
}

2. 给底部文本设置自动顶边距

给每个.testDiv里最后一个<p>(也就是LineBot)添加margin-top: auto,这个属性会让元素自动“挤”到容器底部,占据上方所有剩余空间:

.testDiv p:last-child {
  margin-top: auto;
  margin-bottom: 0; /* 可选,移除默认底部外边距让对齐更紧凑 */
}

原理说明

Bootstrap的row默认是Flex布局,里面的col-2会被自动拉伸到同一高度。我们给.testDiv设置height: 100%就是让它继承这个统一高度,再配合内部的Flex布局和margin-top: auto,就能让底部文本始终固定在容器底部,自然所有LineBot就处于同一水平线了。

完整代码示例

<style>
.testDiv {
  border: solid;
  border-width: thin;
  border-radius: 1rem;
  margin-top: 0.5rem;
  margin-right: 0.5rem;
  padding: 0.5rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.testDiv p:last-child {
  margin-top: auto;
  margin-bottom: 0;
}
</style>

<div class="col-12 row">
  <div class="col-2 testDiv">
    <p>LineTop1</p>
    <hr />
    <p>LineBot</p>
  </div>
  <div class="col-2 testDiv">
    <p>LineTop1</p>
    <hr />
    <p>LineBot</p>
  </div>
  <div class="col-2 testDiv">
    <p>LineTop1 LineTop1 LineTop1</p>
    <hr />
    <p>LineBot</p>
  </div>
  <div class="col-2 testDiv">
    <p>LineTop1</p>
    <hr />
    <p>LineBot</p>
  </div>
  <div class="col-2 testDiv">
    <p>LineTop1</p>
    <hr />
    <p>LineBot</p>
  </div>
</div>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.11 07:50:00