为什么这两个内联块没有对齐?

Ben*_*min 3 css

这两个内联块<div>应该(至少,我认为它们会对齐):

<div class="calendar">
    <div class="month">
        <div class="month-name">January</div>
    </div>
    <div class="day">
        <div class="day-number">21</div>
        <div class="day-name">Wednesday</div>
    </div>
</div>

<div class="button"></div>
Run Code Online (Sandbox Code Playgroud)

<div>用像素精度设置了每个的高度:

.calendar {
    display: inline-block;
    width: 80px;
    height: 74px;
}
.calendar .month {
    background-color: firebrick;
    border-radius: 3px 3px 0 0;
}
.calendar .month-name {
    color: white;
    font-size: 13px;
    text-align: center;
    height: 26px;
}
.calendar .day {
    background-color: linen;
    border-radius: 0 0 3px 3px;
}
.calendar .day .day-number {
    color: black;
    font-size: 26px;
    font-weight: bold;
    text-align: center;
    height: 30px;
}
.calendar .day .day-name {
    color: darkgray;
    font-size: 10px;
    text-align: center;
    height: 18px;
}

.button {
    background-color: silver;
    display: inline-block;
    border-radius: 3px;
    width: 220px;
    height: 74px;
}
Run Code Online (Sandbox Code Playgroud)

但这会产生以下结果:

内联块

这是这段代码的小提琴.

这让我很疯狂,但结果在几个浏览器中都是一致的,所以我一定做错了.

任何人都可以解释原因,并提供修复?

med*_*iev 5

vertical-align:top任何有内联块的事情.

.calendar { vertical-align: top; }

说明:内联块仍然是"内嵌",垂直对齐是基线,意味着它们不一致,并且它们的高度会有所不同,顶部使它们始终从顶部开始.