css实现水平居中的几种方式
一、对于行内元素:
1 | text-align:center; |
二、对于确定宽度的块级元素:
- margin和width实现水平居中
常用(前提:已设置width值):margin-left:auto; margin-right:auto;
- 绝对定位和margin-left: -(宽度值/2)实现水平居中
固定宽度块级元素水平居中,通过使用绝对定位,以及设置元素margin-left为其宽度的一半
1 | .content{ |
- position:absolute + (left=0+top=0+right=0+bottom=0) + margin:auto
1 | .content{ |
三、对于未知宽度的块级元素:
- table标签配合margin左右auto实现水平居中
使用table标签(或直接将块级元素设值为display:table),再通过给该标签添加左右margin为auto
- inline-block实现水平居中方法
display:inline-block;(或display:inline)和text-align:center;实现水平居中
存在问题:需额外处理inline-block的浏览器兼容性(解决inline-block元素的空白间距)
- 绝对定位实现水平居中
绝对定位+transform,translateX可以移动本省元素的50%
1 | .content{ |
- 相对定位实现水平居中
用float或者display把父元素变成行内块状元素
1 | .contentParent{ |
- CSS3的flex实现水平居中方法,法一
1 | .contentParent{ |
- CSS3的flex实现水平居中方法,法二
1 | .contentParent{ |
- CSS3的fit-content配合左右margin为auto实现水平居中方法
1 | .content{ |
参考文章:
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 冬之乐园!