eg.
<div class="out" style="width: 200px;height: 200px;background: lightblue;">
<div class="in" style="width: 50px;height: 50px;background: lightgrey;"></div>
</div>
第一种,万能的flex布局
主要用到弹性盒的align-items: center属性
.out{
display: flex;
align-items: center;
}
note:
使用flex配合margin: auto 可以实现水平垂直都居中
第二种,使用定位
对于已知高度:
即:
.out {
position: relative;
}
.in {
top:50%;left: 50%;margin-top: -height/2;margin-left: -width/2;
或者
position: absolute;top:calc(50% - height/2); calc(50% - width/2);
}
对于未知高度:
即:
.out {
position: relative;
}
.in {
position: absolute;transform:translate(-50%,-50%);
}
第三种,使用table
display: table-cell;ertical-align: middle
.out{
display: table-cell;
vertical-align: middle;
text-align: center;
}
.in {
display: inline-block;
}
note: table-cell不感知table-row等属性
垂直居中
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...