处理图片底部间隙问题

作者 : 开心源码 本文共571个字,预计阅读时间需要2分钟 发布时间: 2022-05-12 共237人阅读

如图所示

当容器不设置宽高时, 加入 img 标签后会自动撑开
那么问题来了, 为什么图片底部为什么会有一点间隙而不是100%填充容器呢?
其实间隙产生的三大元凶是 “幽灵空白节点”、line-height 和 vertical-align 属性
幽灵空白节点 即: 一个宽度为0, 体现好像普通字符的看不见的 “节点”
我们插入一个内容为 “x”, 背景为红色的 “span” 标签 (图片左下角)
可以发现, 图片的底部是和 “x” 的基线对齐的, 这也是行内元素的默认对齐方式

  • 处理方法有很多, 比方
    • 图片块状化. 可以一口气干掉 “幽灵空白节点”、line-height 和 vertical-align
    • 容器 line-height 足够小. 只需半行间距小到字母x的下边缘位置或者者再往上, 自然就没有了撑开底部间隙高度空间了. 比方: 容器设置 line-height: 0;
    • 容器 font-size 足够小. 此方法要想生效, 需要容器的 line-height 属性值和当前 font-size 相关, 如 line-height: 1.5; 或者者 line-height: 150% 之类; 否则只会让下面的间隙变得更大, 由于基线位置因字符x变小而往上升了
    • 图片设置其余 vertical-align 属性值. 间隙的产生起因之一就是基线对齐, 所以我们设置 vertical-align 的值为 top、middle、bottom 中的任意一个都是可以的

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 处理图片底部间隙问题

发表回复