html – 带有和不带文本的内联块div不垂直对齐

前端之家收集整理的这篇文章主要介绍了html – 带有和不带文本的内联块div不垂直对齐前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有两个div并排.两者都具有相同的大小和显示:内联块.两者之间的唯一区别是,第一个有一些文本,第二个是空白.

HTML:

<div>1</div>
<div></div>

CSS:

div {
    display: inline-block;
    border: 1px solid black;
    width: 50px;
    height: 50px;
}

第一个div低于第二个div.

我知道所有可能的修复,例如添加一些文字或& nbsp;到第二个div.当然,添加vertical-align:top也可以解决这个问题.

我想知道的是,有人可以解释一下,为什么一个空白的div具有不同的对齐而不是带有一些文本的div?

JSFiddle

解决方法

默认情况下,内联块框垂直对齐,使得内联块框的基线与呈现它的线框的基线对齐.

具有一行文本的内联块框的基线是该行的基线.更一般地说,内联块的基线是它包含的最后一行文本的基线.但这意味着没有包含任何文本的内联块没有基线.

在这种情况下,回退规则会启动,并且内联块框的底部将放置在其线框的基线上.

猜你在找的HTML相关文章