Foundation卡片需用grid-x+cell实现响应式布局并加grid-margin-x,或用flex-container.align-stretch统一高度;须规范内部图片、标题、文本样式,并禁用float等旧类。
Foundation 的卡片组件(.card)默认是块级、等宽堆叠的,若直接放在非容器或未配合响应式网格使用,容易出现高度不一致、换行错位、间距不均等问题。核心原因在于卡片内容长度不同导致高度差异,而 Foundation 默认未对齐高度或统一列宽。
Foundation 的栅格系统(v6+)需用 grid-x 作为行容器,每个卡片放在 cell 内,并指定宽度类(如 small-12 medium-6 large-4),才能响应式均分且避免浮动错乱:
...
...
...
注意:必须加 grid-margin-x(横向间距)或 grid-padding-x,否则卡片会紧贴边缘;cell 不可省略,仅用 card 无法参与栅格计算。
当需要所有卡片高度一致(如并排展示时底部对齐),可在卡片外层加 flex-container,并设 align-center 或 align-stretch:
... ... ...
关键点:
align-stretch 让卡片自动拉伸到容器最高项的高度card 内部再用 flex-container 冲突布局流flex-dir-row 可实现水平排列(替代栅格),但需手动处理响应式断行(如配合 show-for-medium 类)
性即使外部布局正确,卡片内标题、图片、文本高度不一也会造成视觉不齐。建议:
.card-section img)设固定宽高比或 object-fit: cover
white-space: nowrap; overflow: hidden; text-overflow: ellipsis;(单行)或用 -webkit-line-clamp(多行截断).card-section 设最小高度(如 min-height: 120px),避免文字少的卡片过矮margin-bottom,改用栅格的 grid-margin-x/y 控制整体间距Foundation v6+ 已弃用 row / column 等浮动类。若混用 float-left 或手动写 float CSS,会导致 grid-x 计算失效、换行异常、父容器塌陷。务必统一使用 grid-x + cell 或 flex-container 布局体系。