分类: Html/Css
2015-07-22 11:06:24
Demo: />
vertical.rar
只有一行文字的话,直接用line-hight可以解决。
有多行文字或是想要子div在父div里垂直居中:
首先要理解vertical-align: middle只在table属性中才会垂直居中,应用到display:inline-block元素的话就是和隔壁元素居中对齐。
方法一:
在div里增加一个隐藏子元素,高度为100%和父div一样,这样再设置vertical-align: middle的话子div就会和父div一样高的子元素垂直居中对齐。
方法二:
把父div display:table,里面的子div display: table-cell;再设置vertical-align: middle
方法三:
用position:absolute;left:50%;top:50%;先把子div移动,然后再以子div的高度和宽度来设置margin-top:1/2子div高度;margin-right:1/2子div宽度
方法四:
用css3实现,思路和方法三一样