居中布局
子元素定宽高
1、absolute + margin负值

2、absolute(left,right,top,bottom) + margin + width + height

兼容性:主流浏览器均支持。 注意:子元素必须为固定宽高
子元素不定宽高
1、display:table-cell;

兼容性:由于display:table-cell的原因,IE6\7不兼容。
注意:无论父元素还是子元素都不能浮动,如果父元素浮动,元素就只能水平居中,如果子元素浮动,则子元素按照浮动的方向走。
2、absolute + transform

兼容性:浏览器必须支持transform。
3、display: flex;

兼容性:浏览器必须支持flex。
4、text-align:center;vertical-align:middle;

兼容性:主流浏览器均支持。 注意:子元素必须要是inline-block或者inline的元素,并且子元素不能绝对定位和浮动。
5、calc

兼容性:浏览器必须支持calc。
6、grid
TODO 待补充……
推荐资源
里面还有关于背景图的居中和兼容低版本浏览器的写法
Last updated
Was this helpful?