我有这个包含两个内联div的html:
HTML
div.inline {
display: inline-block;
}

<div class="inline">
<img src="http://via.placeholder.com/350x150" />
</div>
<div class="inline">
<h1 class="title"> TOPIC </h1>
</div>
&#13;
图像和h1
并排显示正确。现在我希望h1
垂直居中。应该是这样的事情
+----------+
| |
| IMG | TOPIC
| |
+----------+
我该怎么做?
答案 0 :(得分:1)
只需使用vertical-align:middle
,因为它会水平对齐元素。
div.inline {
display: inline-block;
vertical-align:middle;
}
&#13;
<div class="inline">
<img src="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRwswZVnaDs2Sn9AyTVbEhdfGc3cCr3tbh_tiytTGd_cJf1d8_a" />
</div>
<div class="inline">
<h1 class="title"> TOPIC </h1>
</div>
&#13;
答案 1 :(得分:1)
你可以使用flex
.container {
display: flex;
align-items: center;
justify-content: center;
}
&#13;
<div class="container">
<div class="inline">
<img src="http://via.placeholder.com/350x150" />
</div>
<div class="inline">
<h1 class="title"> TOPIC </h1>
</div>
</div>
&#13;
供参考:https://philipwalton.github.io/solved-by-flexbox/demos/vertical-centering/
答案 2 :(得分:0)
只需将vertical-align: middle;
添加到您的班级(display
为inline-block
时有效):
div.inline {
display: inline-block;
vertical-align: middle;
}
<div class="inline">
<img src="http://placehold.it/120x120/fe2" />
</div>
<div class="inline">
<h1 class="title"> TOPIC </h1>
</div>
答案 3 :(得分:0)
在你的第二个div上应用这种风格:
div.inline{
vertical-align: middle;
}
答案 4 :(得分:0)
使用引导程序的答案:
用d-flex,h-100,justify-content-center,align-items-center将div包裹在div中
示例:
<div class="d-flex h-100 justify-content-center align-items-center>
<h1>heading</h1>
</div>
答案 5 :(得分:-1)
在css中使用内联高度属性
inline-height:500px; // height of parents div