【发布时间】:2020-12-25 15:34:23
【问题描述】:
在下面的代码中:
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/css/bootstrap.min.css">
<span class="d-inline" style="border: 1px red solid; padding: 3px 0"><span>asbbb</span></span>
<span class="d-inline-block ml-2" style="border: 1px blue solid; padding: 3px 0;"><span>inline-block</span></span>
<div>
<br/>
<span class="d-inline badge" style="border: 1px red solid"><span>asbbb</span></span>
<span class="d-inline-block badge ml-2" style="border: 1px blue solid"><span>inline-block</span></span>
</div>
我创建了两行以在同一行中显示inline 和inline-block 之间的高度差。
第一行显示inline-block 比inline 兄弟高一点。
在第二行中,我向两者都添加了引导类 badge,它显示 inline 元素比它的 inline-block 兄弟元素高一点。
对于这两行,我可以从 DevTools 中看到内部 span 具有相同的高度,但它们最终与它们的父容器具有不同的高度。
不知道display这两个类型的高度是怎么计算的?
【问题讨论】:
-
您阅读规范了吗?
-
@connexo 是的,我在 MDN 上阅读了那个,但无法找到它的定义。如果您能指出另一个更详细的地方,不胜感激:)
-
@JunlongWang 内部
span的高度会因为大小相同。但是具有类的外部span的高度几乎没有什么不同。另外,如果您想知道它们中的高度和宽度是如何受到影响的,请查看我的回答。 -
虽然其他答案值得赞赏,但它们更多地解释了
inline和inline-block之间的区别,这不在我的问题范围内。我认为@temani 给出了最相关的答案,有助于我理解。