本文介绍如何结合 foundation 的 equalizer 插件与 css 定位技术,使多张高度不一的卡片中按钮统一固定在底部,解决因内容长度差异导致的视觉错位问题。
Foundation 的 Equalizer 组件设计初衷是同步多个元素的高度(如卡片容器),而非直接控制其内部子元素(如按钮)的位置。因此,单纯为
确保卡片容器高度一致
为 .test-card-body(即卡片内容区)启用 Equalizer 监听,并移除手动设置的 style="height: 342px;"(该内联样式会覆盖 Equalizer 计算结果):
为按钮容器添加绝对定位样式
创建一个专门用于定位按钮的包装类(如 .btn-bottom),并确保其父容器(.test-card-body)具有 position: relative(你已定义,无需修改):
.btn-bottom {
position: absolute;
bottom: 1rem; /* 可调,控制距底边距离 */
left: 50%;
transform: translateX(-50%);
width: 80%; /* 可选:限制按钮宽度 */
text-align: center;
}? transform: translateX(-50%) 比 left: 50% 更精准居中,避免因元素自身宽度导致偏移。
更
新 HTML 结构
将按钮包裹在 .btn-bottom 中,并移除冗余的
标签(除非语义必需):
Text
...
@media screen and (max-width: 640px) {
.btn-bottom { bottom: 0.75rem; }
}当 Equalizer 正常运行后:
这种方法规避了 Equalizer 对子元素定位的局限性,以语义清晰、性能轻量的纯 CSS 方案达成专业级卡片布局一致性。