是否有可能在一个div内垂直对齐文本?
这个问题在这里已经有了答案:
为您的文本内容创建一个容器,也许是一个span 。 
#column-content {
  display: inline-block;
}
img {
  vertical-align: middle;
}
span {
  display: inline-block;
  vertical-align: middle;
}
/* for visual purposes */
#column-content {
  border: 1px solid red;
  position: relative;
}<div id="column-content">
  <img src="http://i.imgur.com/WxW4B.png">
  <span><strong>1234</strong>
    yet another text content that should be centered vertically</span>
</div>Andres Ilich说得对。 以防万一有人错过了他的评论...
A.)如果你只有一行文字:
HTML:
<div>vertically centered text</div>
CSS:
div
{
  height: 200px;
  line-height: 200px; /* <-- this is what you must define */
  vertical-align: middle;
}
点击演示
B.)如果你有多行文字:
HTML:
<div><span>vertically centered text</span></div>
CSS:
div
{
  height: 200px;
  line-height: 200px;
}
span
{
  display: inline-block;
  vertical-align: middle;
  line-height: 14px; /* <-- adjust this */
}
点击演示
2016年4月10日更新
现在应该使用Flexbox垂直(或甚至水平)对齐项目。
<div class="flex-container">
    <div class="flex-item">Item</div>
    <div class="flex-item">Item</div>
    <div class="flex-item">Item</div>
    <div class="flex-item">Item</div>
</div>
<style>
.flex-container {
    display:flex;
    align-items: center; /* Vertical center alignment */
    justify-content: center; /* Horizontal center alignment */
}
</style>
有关Flexbox的良好指南可以在CSS技巧上阅读。 感谢Ben(来自评论)指出,没有时间更新。
一个叫Mahendra的好人在这里发布了一个非常有效的解决方案
下面的类应该使元素水平和垂直居中其父。
.absolute-center {
/* Internet Explorer 10 */
display:-ms-flexbox;
-ms-flex-pack:center;
-ms-flex-align:center;
/* Firefox */
display:-moz-box;
-moz-box-pack:center;
-moz-box-align:center;
/* Safari, Opera, and Chrome */
display:-webkit-box;
-webkit-box-pack:center;
-webkit-box-align:center;
/* W3C */
display:box;
box-pack:center;
box-align:center;
}
上一篇: Is it possible to vertically align text within a div?
下一篇: Is the recommendation to include CSS before JavaScript invalid?
