【发布时间】:2015-12-07 23:50:24
【问题描述】:
我的目标是创建 3 个垂直对齐的 div,其中一个 div 有一个父级高度的垂直条 (border-right)。父级可以有一个固定的高度,这反过来应该可以使用 css 使用垂直对齐(我知道 flexbox 可以解决它,但我真的在这里询问垂直对齐行为)。
以下 sn-p 显示了我不理解的 CSS 行为:
<div class="parent">
<div class="a">
Part A
</div>
<div class="b">
<div>
Part B<br>Part B
</div>
</div>
<div class="c">
<span>Part C</span>
</div>
</div>
还有css
.parent {
height: 50px;
display: inline-block;
}
.a {
display: inline-block;
vertical-align: middle;
}
.b {
display: inline-block;
vertical-align: middle;
}
.c {
display: inline-block;
vertical-align: middle;
border-right: 1px solid black;
padding-right: 10px;
height: 50px;
}
.span {
display: inline-block;
vertical-align: middle;
}
我期待 div C 垂直对齐,但它在顶部对齐。如果我从类.c 中删除height 属性,则对齐正确但垂直条太短。我为这个问题创建了以下小提琴:
http://jsfiddle.net/04e2ckxm/2/
【问题讨论】:
-
试试
display: table-cell?看我的回答。
标签: css