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

如何在flex布局的BorderBox容器内图片上方添加标题?

布局问题解决方案

问题根源

innerLogo 和 innerLogo2 容器设置了 display: flex(默认横向排列),直接在图片的父div里加标题后,标题会和图片横向并排,导致标题出现在图片左侧。

具体修改步骤

1. 修正HTML结构,添加标题并统一类名

把重复的id="certImg"改成类名(id不能重复),同时在每个图片容器内添加标题:

<div id="cert"> 
   
    <div id="wrapper4">
     
        <div id="innerLogo">
            <!-- 给每个图片+标题的容器加类名cert-item -->
            <div class="cert-item">
                <h3>CCNA</h3>
                <img src="./img/ccna.png" class="certImg"/>
            </div>
            <div class="cert-item">
                <h3>Linux</h3>
                <img src="./img/linux.png" class="certImg"/>
            </div>
            <div class="cert-item">
                <h3>Azure</h3>
                <img src="./img/azure.png" class="certImg"/>
            </div>
        </div>
        <div id="innerLogo2">
            <div class="cert-item">
                <h3>JavaScript</h3>
                <img src="./img/javascript-1.png" class="certImg"/>
            </div>
            <div class="cert-item">
                <h3>Python</h3>
                <img src="./img/python.png" class="certImg"/>
            </div>
            <div class="cert-item">
                <h3>PowerShell</h3>
                <img src="./img/powershell.png" class="certImg"/>
            </div>
        </div>

    </div>
</div>

2. 修改CSS样式,实现标题在上、图片在下的垂直布局

  • 给.cert-item设置垂直flex布局,让标题和图片上下排列,并居中对齐
  • 调整innerLogo和innerLogo2的冗余样式,保留必要的flex属性
  • 把原#certImg改成.certImg(因为改成了类名)
#cert {
    margin-top: 20px;
    margin-left: auto;
    margin-right: auto;
    width: 1000px;
    box-sizing: border-box;
    display: flex;
    justify-content: left;
}

#wrapper4 {
    width: auto;
    display: flex;
    justify-content: space-evenly;
}

#innerLogo, #innerLogo2 {
    width: 490px;
    padding: 20px;
    margin-right: 20px;
    box-sizing: border-box;
    display: flex;
    justify-content: space-between; /* 保持三个item横向均匀分布 */
    background-color: #dfdfdf;
    border-radius: 20px;
}

/* 去掉innerLogo2的单独margin,统一用上面的选择器 */
#innerLogo2 {
    margin-right: 0;
    padding: 25px;
}

/* 每个证书项的垂直布局 */
.cert-item {
    display: flex;
    flex-direction: column; /* 垂直排列标题和图片 */
    align-items: center; /* 内容居中 */
    text-align: center; /* 标题文字居中 */
}

.certImg {
    width: 140px;
    height: 140px;
    margin-top: 8px; /* 标题和图片之间加间距 */
}

/* 可选:调整标题样式,比如字体大小 */
.cert-item h3 {
    margin: 0;
    font-size: 14px;
}

效果说明

修改后,每个证书的标题会垂直排列在图片上方,同时innerLogo和innerLogo2内的三个证书项依然保持横向均匀分布,符合预期布局。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 00:55:23