高度不定垂直居中_css如何实现div高度不固定垂直居中?

本文介绍了四种CSS方法实现高度不固定的div垂直居中:1) 使用伪元素和inline-block/vertical-align;2) 利用css3的flex布局;3) 通过css3的transform属性;4) 设置margin:auto。这些方法均不适用于IE8及以下版本。
摘要由CSDN通过智能技术生成

0df7a4a46f21e9042f7dee8d2d2a82b7.png该方法适用于所有品牌的电脑。

CSS不固定高宽div垂直居中的方法

1、伪元素和 inline-block / vertical-align

.box-wrap:before {

content: '';

display: inline-block;

height: 100%;

vertical-align: middle;

margin-right: -0.25em; //微调整空格

}

.centered {

display: inline-block;

vertical-align: middle;

}

方案一

我是伪类,看我是否垂直居中

88b3311ed59f41e8bc1d5baf3112c65e.png

该方法非常巧妙的解决了垂直居中问题,可以作为参考~

2、css3—flex

.box-wrap {

height: 300px;

justify-content:center;

align-items:center;

display:flex;

background-color:#666;

}

我是css3-flex

686a7f4e2a1ae11348c2a7faada742f3.png

css3属性~不兼容ie8以下

3、css3—transform

.box-wrap {

width:100%;

height:300px;

background:rgba(0,0,0,0.7);

position:relative;

}

.box-content{

position:absolute;

background:pink;

left:50%;

top:50%;

transform:translateX(-50%) translateY(-50%);

-webkit-transform:translateX(-50%) translateY(-50%);

}

我是css3-transform

36008c85304ec7765df969c96be3185f.png

css3属性~不兼容ie8以下

4、设置margin:auto来达到效果

.box-wrap {

position: relative;

width:100%;

height:300px;

background-color:#f00;

}

.box-content{

position: absolute;

top:0;

left:0;

bottom:0;

right:0;

width:50%;

height:50%;

margin:auto;

background-color:#ff0;

}

我是auto

9ea0d3ad5d04ac7b2804eff53bd7816b.png

该方法得严格意义上的非固定宽高,而是50%的父级的宽高。视觉上可以达到效果,如果是集中有类似的需求可以用此方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值