如果容器中的高度固定,则可以将line-height设置为与高度相同,并且它将垂直居中。然后只需添加text-align使其水平居中即可。
编辑
您的代码应如下所示:
.img_thumb { float: left; height: 120px; margin-bottom: 5px; margin-left: 9px; position: relative; width: 147px; background-color: rgba(0, 0, 0, 0.5); border-radius: 3px; line-height:120px; text-align:center;}.img_thumb img { vertical-align: middle;}更新
现在是2016年(未来!),看起来有些事情正在改变(最终!)。
为什么这么重要?随着 IE8 的宣布 死亡 ,我们终于可以开始使用 CSS3 魔术了。
话虽如此,这是一种在水平和垂直方向上对齐元素的更新方法:
.container { position: relative;}.container .element { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);}使用这种
transform: translate();方法,您甚至不需要在容器中设置固定高度, 而是完全动态的
。您的元素具有固定的高度或宽度?您的容器也一样?没有?没关系,它将始终居中,因为所有居中属性都固定在子级上,它独立于父级。谢谢CSS3。
如果只需要在一个维度上居中,则可以使用
translateY或
translateX。尝试一会儿,您将了解它的工作原理。另外,尝试更改的值
translate,您会发现它在很多情况下都很有用。



