CSS各类居中的实现

2017-07-05  本文已影响0人  yuhuan121

1.水平居中

#layout只用于控制宽度居中,别再给其他样式了
.layout{
width:XXX px;
margin:0 auto
}

2.垂直居中(9种方式实现垂直居中)

1.当希望文字段落处于居中,内容变化时仍然居中,对父容器的上下padding设置相同值即可。例如padding:30px 0;
2.对于单行的行内元素,设置line-height(行高)值与height值相等。
3.绝对定位+margin-top:-0.5* height实现垂直水平居中
指子元素在父框中保持垂直水平绝对居中,即使父框发生移动

position:absolute;
left:50%;
top:50%;
margin-left:-0.5*width px; 
margin-top:-0.5*height px;

4.绝对定位+ transform: translate(-50%,-50%);
当子元素宽度长度可变,仍希望它在父元素中保持垂直水平绝对居中,用绝对定位+transform:translate(-50%,-50%);相对于自身发生偏移,代替margin-left和margin-top。

position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%,-50%);

5.table自带功能
6.100% 高度的 afrer before + inline block+vertical-align:center
vertical-align 用来指定行内元素(inline)或表格单元格(table-cell)元素的垂直对齐方式。
vertical-align实现图片在盒内的居中1

通过增加行内元素,并将其设置为inline-block属性

7.div 装成 table, display: table-cell+vertical-align: middle
vertical-align实现图片在盒内的居中2

将图片display属性设置为table-cell,此方法更便捷
8.父元素relative,子元素absolute+margin:auto

9.flex
上一篇下一篇

猜你喜欢

热点阅读