最近看好多人在问,如果一个外层div的高度固定了,而内部标签内容不定,但必须要垂直居中,这该如何解决。为了服务大众,小生我今天讲讲我一般的解决方法:
现在要实现这样一个居中的效果,可能有人要说了,直接padding不就行了。对,这是一种常用的解决方式,我一般也是用这种方式
去解决这种问题。但有时候会有特定的情况发生,比如如果最外层有一层背景,但这层背景的高度是固定的,你所写的这部分内容要相对于这个背景是居中的,这种情况
。我的解决方式就是应用display:inline-block+vertical-align:middle;来解决。(注:在使用display:inline-block时建议用内联标签,为什么,这不多说,网上很多
说明)。不过这种情况下,最外层的标签是不能产生浮动的。内部标签上必须得有个min-height的高度才能产生作用。这样无论中间写几个字,内部变迁的位置都是相
对于这背景图是居中的。也许有朋友已经试过,发现没有产生效果,别急,我还没说完,因为vertical-align:middle;这个玩意是相对于同级的东西产生居中,如果只有
一个外层,由于内层没有参照的部分,vertical-align:middle;其实是无法起作用的,所以,在内层同级的地方加一个内联标签,同样使用display:inline-block;并给
个宽度,这样你的内层标签也就成功了。