我有一个类似的html到一个波纹管(我使用外部样式表,但在这个例子中我不想让它更容易阅读)。 "更大" div动态获取多行文本,而"较小的"总是只有一行。但是,我想要"较小的" div正好在#34;更大的"左侧的中间垂直对齐。 DIV。我不能使用display:table和display:table-cell,因为我使用jquery slidedown函数来显示"包装器" div和那迫使"包装"显示:块。 如何做任何帮助将不胜感激。
<div class="wrapper">
<div class="smaller"style="float: left; min-height: 100%;">
<p style="vertical-align: middle;">Heading</p>
</div>
<div class="bigger" style="float: right;">
<p>text1</p>
<p>text2</p>
<p>text3</p>
</div>
</div>
答案 0 :(得分:4)
请避免使用内联样式。你有课程,使用它们!也没有vertical-align:center
。看看这里:
<强> HTML 强>
<div class="wrapper">
<div class="smaller">
<p>Heading</p>
</div>
<div class="bigger">
<p>text1</p>
<p>text2</p>
<p>text3</p>
</div>
</div>
<强> CSS 强>
.wrapper{
display: table;
}
.smaller{
min-height: 100%;
display: table-cell;
vertical-align: middle;
width: 97%;
}
.bigger{
height: 100px;
display: table-cell;
}
您可以使用display:table
和display:table-cell
来实现此目的。
答案 1 :(得分:0)
您不希望.bigger
浮动,因为.wrapper
依赖于它的高度。尝试这样的事情fiddle。