1.首先是要使盒子为display:box | -webkit-box| -moz-box
2.设置元素的box-pack和box-align即可,这两个属性当前只有webkit和moz支持。
3.box-pack控制的是水平的左和右,取值有:start(居左),center(居中),end(居右)。
4.box-align的取值有:start(居上),center(居中),end(居下)。
如果我们要设置垂直居中的话只需要将这两个属性的值都设置为center即可
给这个盒子宽高,以及设置display即可。实现水平垂直居中的关键代码:
display:-webkit-box
-webkit-box-orient:horizontal
-webkit-box-pack:center
-webkit-box-align:center
下边是一个例子:
http://sandbox.runjs.cn/show/uzeplffk
vertical-align: middle是说这个属性么
这个属性严格意义上说并不是垂直居中
它只是让行内元素(文字和图片等)以自身为参照中对齐(top是顶对齐)
但这个参照不是绝对的,他受行高等因素影响(及浏览器的兼容)所以设置了对齐以后往往达不到自己想要的结果。
浏览器的垂直居中是个挺麻烦的事,简单的文字图片的对齐 可以用vertical-align,但稍微复杂点的就不好使啦
通常会用js计算高度在设置其他属性让目标元素居中
目前为止只有table的垂直居中属性 是真正意义上 且不需要js的垂直居中