当前位置: 首页 > news >正文

Css样式中设置gap: 12px以后左右出现距离问题解析

原因核心:

虽然写的是:

display: flex;
gap: 12px;

但在实际 DOM 中,这段结构:

<div class="el-form-item__content"><div class="el-input"><input type="text" class="el-input__inner"></div>
</div>

只有 一个子元素:.el-input按理说 gap 不会生效。但看到“gap 产生左右 12px”,可能是因为:


::before::after 伪元素参与了布局!

某些框架(如 Element-UI)默认会在 el-form-item__content 内部加上隐藏的 ::before::after,用于清除浮动或对齐。

这些伪元素虽然不可见,但在 display: flex + gap 组合下,会被当作有效的子元素,从而使:

  • .el-input::before 之间 产生 12px 间距
  • .el-input::after 之间 也产生 12px 间距

这就是原因所在!!!!!


验证方法:

按下 F12 打开浏览器开发者工具:

  1. 选中 .el-form-item__content
  2. 查看其子节点是否有 ::before / ::after
  3. 你会发现两边的 gap 是因为这两个伪元素引起的

解决方法

方式一:清除伪元素对布局的影响(推荐)

.el-form-item__content::before,
.el-form-item__content::after {display: none !important;content: none !important;
}

方式二:只对真正子元素设置 gap,不使用 flex gap

改为用 margin-left

.el-form-item__content > *:not(:first-child) {margin-left: 12px;
}

相关文章:

  • 半导体晶圆制造洁净厂房的微振控制方案-江苏泊苏系统集成有限公司
  • 深度学习笔记25-RNN心脏病预测(Pytorch)
  • Haption在危险、挑战性或受限环境中操作的情况提供了一种创新的遥操作解决方案
  • 雷达目标起伏特性简析
  • Eureka实战:怎么配置优化以减少服务发现延迟
  • 深入浅出:Spring IOCDI
  • Golang——2、基本数据类型和运算符
  • matlab分布式电源接入对配电网的影响
  • 新能源集群划分+电压调节!基于分布式能源集群划分的电压调节策略!
  • Java 大数据处理:使用 Hadoop 和 Spark 进行大规模数据处理
  • VRRP 原理与配置:让你的网络永不掉线!
  • 2025年通用 Linux 服务器操作系统该如何选择?
  • 在 Mac 下 VSCode 中的终端使用 option + b 或 f 的快捷键变成输入特殊字符的解决方案
  • 数据库查询性能优化:深入理解与应用物化视图
  • VScode-使用技巧-持续更新
  • LeetCode 高频 SQL 50 题(基础版)之 【连接】部分 · 下
  • 立控信息智能装备柜:科技赋能军队装备管理现代化
  • 【航天远景 MapMatrix 精品教程】08 Pix4d空三成果导入MapMatrix
  • Greenplum:PB级数据分析的分布式引擎,揭开MPP架构的终极武器
  • 每日温度(力扣-739)
  • 建立b2b网站成本/网站广告接入
  • 个人网站论文摘要/优化疫情防控措施
  • 惠阳做网站/无屏蔽搜索引擎
  • 网站开发工具/超级外链工具有用吗
  • 韶关公司做网站/个人怎么注册自己的网站
  • 乐清网站只做/最新足球新闻头条