CSS元素居中的几种常用方法

<div class="box">
	<div class="box1"></div>	
</div>
1、定位+margin:auto;

优点:兼容性较好

缺点:不支持IE7以下的浏览器

.box{
	position:relative;
}
.box1{
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	margin:auto;
}
2、定位+margin-left+margin-top

优点:兼容性好

缺点:必须知道子元素的宽高

.box{
	position:relative;
}
.box1{
	position:absolute;
	left:50%;
	top:50%;
	margin-left:-元素宽;
	margin-top:-元素高;
}
3、定位+transform

这是css3样式,兼容性较差,只支持IE9+的浏览器

.box{
	position:relative;
	}
.box1{
	position:absolute;
	left:50%;
	top:50%;
	transform:translate(-50%,-50%);
}
4、弹性盒子

移动端首选

.box{
	display:flex;
	justify-content:center;
	align-items:center;
}
.box1{
	width:100px;
	height:100px;
}

拓展知识

让一个行内块元素在父元素中上下左右居中的方法,实现过程颇为繁琐,只做了解即可

	.box{
            width: 600px;
            height: 400px;
            background-color: blueviolet;
        }
    .box1{
            width: 100px;
            height: 100px;
            background-color: burlywood;
            *确保子元素是行内块元素*
            display: inline-block;
        }
	<div class="box">
        <div class="box1"></div>
    </div>

在这里插入图片描述

实现流程

1:左右居中

.box{		*给父元素添加*
            text-align: center;
        }

2:上下居中
a:必须保证 标尺 inline-block 标尺和子元素在同一行

<div class="box">
        <div class="box1"></div><span></span>
    </div>

b:给“标尺”确定中线 添加属性 vertical-align:middle;
注意:vertical-align属性按照 顶线 中线 基线 底线 来对齐

span{
            width: 2px;
            height: 100%;
            background-color: chartreuse;
            vertical-align: middle;
        }

在这里插入图片描述
c:给子元素添加属性 vertical-align:middle;

.box1{
            width: 100px;
            height: 100px;
            background-color: burlywood;
            vertical-align: middle;
        }

在这里插入图片描述
c:给“标尺”设置width:0;height:100%;隐藏标尺
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值