行内元素的 padding 表现问题

wdssmq · 2023-9-30 11:56:24 · 52 次点击
为什么这个 span 的上一行被遮挡,而下一行没有? [ css 吧] _百度贴吧
https://tieba.baidu.com/p/8625827524

贴吧看到的,下边是我的回复:


实际表现上像是第 n + 1 行比第 n 行有更高的 z-index 值,然而不改定位时单独指定 z-index 又是无效的,,AI 也没给出对题的解释。。


p 中有一个 span ,为 span 设置 padding 和 背景色,span 显示在第二行,为什么第一行会被 span 遮挡而第三行不会?
举报· 52 次点击
登录 注册 站外分享
2 条回复  
chnwillliu 小成 2024-1-9 06:41:45
Normal flow 的情况下由 line-height 不足或负 margin 导致的重叠,按文档流谁在后谁显示在上面。
rabbbit 小成 2023-9-30 12:41:42
https://www.w3.org/TR/css-inline-3/#paint-order
Except as specified for positioned boxes (see [CSS-POSITION-3]) inline-level boxes are painted in document order; the z-index property does not generally apply.

加个属性 margin: 0 -20px; 就懂了
返回顶部