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

如何使用Flexbox实现邮箱地址在用户名下方的布局

如何用Flexbox实现邮箱在用户名下方的用户列表布局

问题出在当前的flex容器结构上:.nav-sr-item-content是flex容器,用户名和邮箱是同级的flex子元素,默认会横向排列,所以单独给邮箱加display:block无法改变它们的布局关系。

要实现邮箱在用户名下方的效果,只需调整结构并利用Flex的垂直排列特性,具体步骤如下:


1. 调整HTML结构

把用户名和邮箱包裹到一个统一的容器(比如.nav-sr-item-info)中,让这个容器成为.nav-sr-item-content的flex子元素:

<div class="nav-sr-item-content">
    <div class="nav-sr-item-picture">
        <img src="https://hips.hearstapps.com/hmg-prod/images/pop-index-2020-chevrolet-corvette-c8-102-1571146873.jpg">
    </div>
    <!-- 新增的信息容器,包裹用户名和邮箱 -->
    <div class="nav-sr-item-info">
        <div class="nav-sr-item-name">
            <span class="nav-sr-in-username">My name</span>
        </div>
        <div class="nav-sr-item-email">
            <span>email@gmail.com</span>
        </div>
    </div>
    <div class="nav-sr-clear-item">
        <button>edit</button>
    </div>
</div>

2. 添加CSS样式

给新增的.nav-sr-item-info设置flex垂直排列,并调整间距:

.nav-search-users .nav-sr-list .nav-sr-item .nav-sr-item-content .nav-sr-item-info {
    display: flex;
    flex-direction: column; /* 让子元素垂直排列 */
    margin-left: 10px; /* 替代原用户名的margin-left */
    gap: 4px; /* 可选:设置用户名和邮箱的间距 */
}

/* 移除原用户名的margin-left,避免重复 */
.nav-search-users .nav-sr-list .nav-sr-item .nav-sr-item-content .nav-sr-item-name {
    margin-left: 0;
}

效果说明

修改后,.nav-sr-item-content的flex子元素变为:头像、信息容器、编辑按钮,三者横向排列;而信息容器内部通过flex-direction: column让用户名和邮箱垂直堆叠,完美实现邮箱在用户名下方的布局。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 12:30:53