如何上下排列两个FontAwesome图标?使用fa-stack类出现重叠问题
解决FontAwesome图标上下排列的问题
哦,这个我太懂了!fa-stack本来就是设计用来让图标叠加重叠的(比如大图标上面放个小徽章那种效果),所以你用它来做上下排列肯定会撞在一起啦😅。我给你两种简单又靠谱的方法,轻松实现图标上下放置的效果:
方法1:用Flexbox垂直排列
自己写个简单的容器,利用Flex布局的垂直排列特性,还能灵活控制间距和对齐方式:
<!-- 自定义垂直排列容器 --> <div class="fa-vertical-group"> <i class="fa-solid fa-circle"></i> <i class="fa-solid fa-check"></i> </div> <style> .fa-vertical-group { display: flex; flex-direction: column; /* 设置为垂直排列 */ align-items: center; /* 让图标水平居中 */ gap: 4px; /* 图标之间的间距,根据需求调整 */ } /* 要是想调整图标大小,直接用FontAwesome自带的尺寸类(比如fa-lg、fa-2x)就行,也可以自定义 */ .fa-vertical-group i { font-size: 1.5em; } </style>
方法2:用Grid布局(更简洁)
Grid布局实现垂直排列更省心,几行代码搞定:
<div class="fa-vertical-grid"> <i class="fa-solid fa-cloud"></i> <i class="fa-solid fa-sun"></i> </div> <style> .fa-vertical-grid { display: grid; place-items: center; /* 一键让图标水平+垂直居中 */ gap: 6px; /* 同样可以调整图标间距 */ } </style>
额外小提示
- 要是想让这个图标组整体看起来更规整,可以给容器加个背景色、边框,或者统一调整尺寸;
- 记住
fa-stack的正确用法是叠加图标,比如下面这种场景才用它:<span class="fa-stack"> <i class="fa-solid fa-circle fa-stack-2x"></i> <i class="fa-solid fa-check fa-stack-1x fa-inverse"></i> </span>
内容的提问来源于stack exchange,提问作者LAffair
相关产品推荐
相关产品推荐

