【发布时间】:2012-02-16 19:57:21
【问题描述】:
在 jsFiddle 上查看我的代码:http://jsfiddle.net/dpMss
HTML 代码:
<div>
<img src="http://www.google.com.hk/intl/zh-CN/images/logo_cn.png" width="276" height="110" alt="Google China">
</div>
CSS 代码:
div {
height: 118px;
line-height: 118px;
background: red;
}
img {
vertical-align: middle;
}
1、为什么我的图片不能垂直居中显示?
2、如何通过line-height和vertical-align CSS属性让我的图片垂直居中显示?
谢谢!
【问题讨论】:
-
它不起作用的原因是因为图像是
inline元素并且将与文本位于同一行。因此,图像下方有额外的填充以容纳在文本行下方占据空间的字母 - 例如 p、q 等 - 因此图像不会显示为垂直对齐。尝试使用 Firebug 将鼠标悬停在图像上,您将在下面看到额外的间距。 -
This Stack Overflow answer 解释得比我好。