CSS浏览器兼容的水平/竖直居中方法

一.水平居中

文本、图片等行内元素的水平居中

给父元素设置text-align: center;例如:DemoDemo

确定宽度的块级元素的水平居中

设置margin-left: auto; margin-right: auto;例如:Demo

不确定宽度的块级元素的水平居中

方法1

利用table元素自动计算宽度的特性 + margin-left: auto; margin-right: auto;实现,例如:Demo

方法2

把块级元素设置为display: inline;再按照行内元素处理(给容器设置text-align: center;),例如

方法3

给容器设置float: left;和position: relative;和left: 50%;子元素设置position: relative;和left: -50%;(可选是否添加float: left;横向排列)

二.竖直居中

父元素高度不确定的文本、图片、块级元素的竖直居中

给容器设置padding-top = padding-bottom即可,例如:Demo

父元素高度确定的单行文本的竖直居中

设置line-height等于容器高度可以实现,例如:Demo

父元素高度确定的多行文本、图片、块级元素的竖直居中

方法1

利用table子元素th/td的默认vertical-align: middle;(要给table设置height: 100%;)实现,例如:Demo

方法2

用display: table-cell;加上vertical-align: middle;再加css hack实现,例如:Demo

css hack for ie6/7 有效性未经测试

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*

code