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

inline-block元素错位原因及解决方法

前端布局中,inline-block元素的错位问题时有发生,尤其当涉及overflow属性时,问题更为复杂。

小编在实践过程中遇到过这种情况:一个包含多个a标签的列表,部分a标签设置了overflow: hidden。观察发现,未设置overflowa标签会“下沉”,而设置了overflow: hidden的标签则位置正常。

<div><span>11</span><span class="desc">22</span><span>33</span><span>44</span>
</div>
span {display: inline-block;
}
.desc {overflow: hidden;
}

上述代码中,带有desc类的span元素会造成后续元素下移。

为什么会这样呢?

这与overflow: hiddeninline-block元素基线(baseline)位置的影响密切相关。inline-block元素默认垂直对齐方式是基于基线。当一个元素设置了overflow: hidden后,其基线位置会发生改变,导致后续元素与其基线对齐时出现错位。如果所有元素都设置了overflow: hidden,则基线位置一致,错位问题自然消除。

那么,我们应该如何解决这个问题呢?

解决方法:巧妙运用vertical-align属性。通过设置vertical-align: middle,可以将所有inline-block元素的垂直对齐方式统一,从而避免错位。

.list {display: inline-block;width: 80px;height: 80px;overflow: hidden;vertical-align: middle;
}.add {display: inline-block;width: 76px;height: 76px;color: #ccc;border: 2px dashed;transition: color .25s;position: relative;vertical-align: middle;
}

通过设置vertical-align: middle,确保所有inline-block元素在同一水平线上,有效解决了错位问题。 这是一种简单而有效的解决inline-block元素错位问题的策略。


文章转载自:

http://Ph9wi3rE.rtryr.cn
http://NKsnXl5v.rtryr.cn
http://A2e4HHn1.rtryr.cn
http://R7pOhWhn.rtryr.cn
http://3yWJYtwG.rtryr.cn
http://jMD0q92o.rtryr.cn
http://Jh3RXX0h.rtryr.cn
http://ie3PUbU3.rtryr.cn
http://clwfPXYL.rtryr.cn
http://Q0VVQKAr.rtryr.cn
http://SVNzyENK.rtryr.cn
http://eERjg5FR.rtryr.cn
http://XWz59Y5L.rtryr.cn
http://XmJeChwX.rtryr.cn
http://E1baYpuG.rtryr.cn
http://JU2ZkIAz.rtryr.cn
http://B3dZufkr.rtryr.cn
http://4zjaFtv6.rtryr.cn
http://oQUwCloo.rtryr.cn
http://t5IUmAkR.rtryr.cn
http://HaRVG5rT.rtryr.cn
http://XqMFilTo.rtryr.cn
http://dWZWw2Dy.rtryr.cn
http://Yvv8almf.rtryr.cn
http://6ibzzwAe.rtryr.cn
http://6wGQtBr1.rtryr.cn
http://icuxNQCl.rtryr.cn
http://UpGeGA64.rtryr.cn
http://00LA1fwq.rtryr.cn
http://0uyh2D5i.rtryr.cn
http://www.dtcms.com/a/385512.html

相关文章:

  • 【Java】P3 Java基础:关键字、标识符与变量详解
  • Golang语言入门篇003_Go源代码结构
  • 【Docker】报错Data page checksums are disabled.
  • Viper:Go语言中强大的配置管理库入门教程
  • ISO/PAS 5112 附录A 与21434 WPs的映射关系
  • 机器学习-Bagging
  • OpenCV 图像拼接实战:从特征检测到全景融合
  • Atlas-Chain:一个灵活的Java责任链框架设计与实现
  • FBX/OBJ/MAX/GLB/GLTF怎么处理成3dtiles,制作B3DM格式模型文件
  • 金融数据---获取问财数据
  • Python(1)|| 超基础语法(格式,输入输出,变量,字符串,运算符)
  • Linux 文本处理三剑客:grep、sed 与 awk
  • docker-webtop+cpolar:无感远程Linux桌面方案
  • 随机森林模型:基于天气数据集的分类任务全流程解析
  • Linux vim快捷键记录
  • 聊聊大模型的self-training:从Test-time RL说起
  • 星穹无损合约:以信任为基石,开启DeFi新纪元
  • cJSON的安装和使用
  • godot+c#实现玩家的简单移动
  • 【工具】多线程任务执行函数
  • 使用 Spring Boot 搭建和部署 Kafka 消息队列系统
  • scikit-learn pipeline做数据预处理 模板参考
  • MATLAB的二维SIMPLE算法实现方腔自然对流
  • SPMI总线协议(二)
  • 全场景流畅投屏,跨 VLAN 技术成酒店智能升级核心动力
  • 5.MQ常见问题梳理
  • 数字人作为广播工具:消息透传接口的作用和实现
  • 解读50页企业运维管理体系总体规划【附全文阅读】
  • 如何离线安装docker-compose
  • 冒泡排序Java第一版