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

如何解决<i>标签设置display:inline不生效始终为块级元素的问题

问题原因

你给<i>设置display: inline不生效,根本不是<i>的属性没生效,而是上层布局逻辑错误导致的换行,核心问题出在2处:

  1. 破坏了Bootstrap原生.row的布局逻辑:.row默认是display: flex弹性布局,你给绑定了.row的.redesSociais容器加了display: inline,直接打乱了弹性布局规则,导致子元素排布异常。
  2. 没有处理同容器内<h2>的默认属性:<h2>是原生块级元素,默认独占整行,就算<i>是行内元素,也会被<h2>挤到下一行显示。

Font Awesome的<i>标签默认就是inline-block属性,本身就支持并排显示,不需要额外加display: inline声明。


修复方案

把你CSS中对应的部分替换为如下代码即可:

.redesSociais{
    margin: 20px;
    /* 保留.row默认的flex布局,删掉原来的display: inline */
    align-items: center; /* 让标题和图标垂直居中对齐 */
    gap: 16px; /* 调整元素之间的间距,可自行修改数值 */
}
/* 清除h2默认样式避免影响布局 */
.redesSociais h2 {
    margin: 0;
    font-size: 1.25rem;
}
.redesSociais i {
    background-color: chocolate;
    font-size: 1.25rem; /* 调整图标大小和标题匹配,可自行修改 */
}

如果不需要标题和图标在同一行,只需要三个图标在下一行并排,可以把三个<i>标签单独包裹在一个<div>里放在<h2>下方即可,不需要修改上面的CSS。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 04:06:03