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

如何让flex布局子容器内“This is Product”文本显示在产品名称下方

问题原因

你代码中对所有div元素统一设置了display: flex规则,flex布局默认是横向排列子元素,所以每个产品卡片容器(.parent下的四个子div)内部的两个span会默认横向并排,这就是你设置span为块级、替换为p标签都不生效的核心原因,和是否使用div元素承载文本没有关系。

解决方法

最简单的方案是缩小flex规则的生效范围,只给最外层的.parent容器设置flex布局,再调整产品卡片内部的排列规则即可:

修改后的CSS代码

* {
    box-sizing: border-box;
}
/* 只给外层父容器设置横向flex,实现四个卡片并排 */
.parent {
    display: flex;
    justify-content: space-between;
}

.parent > div {
    background-color: #eee;
    width: calc(95% / 4);
    padding: 20px;
    /* 可选:如果要让卡片内部内容垂直居中对齐、控制两行间距,可以加下面的规则 */
    display: flex;
    flex-direction: column;
    gap: 8px;
}

你的HTML代码不需要做任何修改,调整CSS后就能实现产品名称在上、描述文本在下的效果。如果不想修改全局div的选择器,也可以单独给.parent > div添加flex-direction: column规则,强制产品卡片内部的元素纵向排列,也能达到同样的效果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 09:45:04