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

如何在无序列表中并排显示两个Font Awesome图标

解决Font Awesome列表中两个图标并排不重叠的问题

问题出在fa-li类的默认样式上——它是绝对定位的,所有带这个类的元素都会被定位到列表项的同一个左侧位置,所以两个图标会重叠。下面是几种可行的解决方法:

方法1:自定义图标容器(推荐,更灵活)

放弃使用fa-li,用一个容器包裹两个图标,自己控制布局和间距:

<ul class="custom-icon-list">
    <li>
        <span class="icon-pair">
            <i class="fa-solid fa-a"></i>
            <i class="fa-solid fa-1"></i>
        </span>
        List item
    </li>
</ul>

对应的CSS:

/* 去掉默认列表样式 */
.custom-icon-list {
    list-style: none;
    padding-left: 0;
}

/* 控制图标组的布局 */
.icon-pair {
    display: inline-flex;
    gap: 6px; /* 两个图标之间的间距 */
    margin-right: 10px; /* 图标和文字之间的间距 */
    align-items: center; /* 垂直居中对齐 */
}

方法2:调整第二个图标的定位

保留fa-ul和fa-li,通过CSS偏移第二个图标的位置:

<ul class="fa-ul">
    <li>
        <i class="fa-li fa-solid fa-a"></i>
        <i class="fa-li fa-solid fa-1 icon-shift"></i>
        List item
    </li>
</ul>

对应的CSS:

.icon-shift {
    /* 用transform平移,避免硬编码数值 */
    transform: translateX(100%);
    /* 如果需要更精确的控制,也可以直接调整left值:
    left: 0; 默认fa-li的left是-1.2em,这里改成0就能移到第一个图标右侧 */
}

/* 可选:如果图标整体太靠左,调整ul的内边距 */
.fa-ul {
    padding-left: 3em; /* 默认是2.5em,适当增大给两个图标留出空间 */
}

方法3:利用列表项的padding区域定位图标

给列表项设置padding,把图标绝对定位在padding区域内:

<ul class="positioned-icon-list">
    <li>
        <i class="fa-solid fa-a"></i>
        <i class="fa-solid fa-1"></i>
        List item
    </li>
</ul>

对应的CSS:

.positioned-icon-list li {
    position: relative;
    padding-left: 3em; /* 给两个图标留出左侧空间 */
    list-style: none;
}

.positioned-icon-list li i {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%); /* 垂直居中 */
}

/* 第二个图标偏移到第一个右侧 */
.positioned-icon-list li i:last-of-type {
    left: 1.2em; /* 和fa-li默认的宽度对应 */
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 12:40:40