我的CMS有相当严格设置2列有标题和内容,如下图所示:Flexbox垂直对齐包装器中的特定内容?
.wrapper {
overflow: auto;
border: 1px solid #ccc;
text-align: center;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-align-items: center;
-webkit-box-align: center;
align-items: center;
}
.left,
.right {
float: left;
width: 45%;
padding: 5px;
}
<div class="wrapper">
<div class="left">
<h3>Title (should be aligned to top)</h3>
<div class="content">
left<br>
left<br>
left<br>
left<br>
</div>
</div>
<div class="right">
<h3>Title (should be aligned to top)</h3>
<div class="content">
right
</div>
</div>
</div>
我想使.content
每列垂直对齐中间但保持标题h3
与顶部垂直对齐。
通常我会用Flexbox,就这样实现垂直对齐:
.wrapper {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-align-items: center;
-webkit-box-align: center;
align-items: center;
}
但当然,这将影响内.wrapper
所有元素。
有人会知道一种方法,我可以'目标'.content
类,并获得相同的效果(记住我不能真正改变HTML)?
为什么你的头有类 '左'?也许为它做一个类,用vertical-align:middle; –