居中(整理)

一、在一个div里的div左右垂直居中

  条件1:已知box1,box2宽高

  条件2:已知box1宽高,box2宽高未知(即box2宽高是可变的)

<div class="box1">
		<div class="box2"></div>
</div>
       通用method1:

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style type="text/css">
		.box1{width: 500px;height: 500px;border: 1px solid red;text-align: center;}
		.box2{width: 200px;height: 200px;border:1px solid green;display:inline-block;vertical-align: middle;}
		span{width: 0;height: 100%;display: inline-block;vertical-align: middle;}
	</style>
</head>
<body>
	<div class="box1">
		<div class="box2"></div>
		<span></span>
	</div>
	
</body>
</html>

通用method2:

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style type="text/css">
		.box1{width: 500px;height: 500px;border: 1px solid red;display: table-cell;vertical-align: middle;}
		.box2{width: 200px;height: 200px;border:1px solid green;margin: 0 auto;}
		
	</style>
</head>
<body>
	<div class="box1">
		<div class="box2"></div>
		
	</div>
	
</body>
</html>

通用method3:

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style type="text/css">
		.box1{width: 500px;height: 500px;border: 1px solid red;position: relative;}
		.box2{width: 200px;height: 200px;border:1px solid green;position: absolute;top: 0;right: 0;bottom: 0;left: 0;margin: auto;}
		
	</style>
</head>
<body>
	<div class="box1">
		<div class="box2"></div>
		
	</div>
	
</body>
</html>

通用method4:

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style type="text/css">
		.box1{width: 500px;height: 500px;border: 1px solid red;position: relative;}
		.box2{width: 200px;height: 200px;border:1px solid green;position: absolute;
		top: 50%;left: 50%;transform:translate(-50%,-50%);}//使用css3属性
		
	</style>
</head>
<body>
	<div class="box1">
		<div class="box2"></div>
		
	</div>
	
</body>
</html>



box2宽高已知时:(或不用定位,计算后用margin来实现)

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style type="text/css">
		.box1{width: 500px;height: 500px;border: 1px solid red;position: relative;}
		.box2{width: 200px;height: 200px;border:1px solid green;position: absolute;top: 50%;left: 50%;margin: -100px 0 0 -100px;}
		
	</style>
</head>
<body>
	<div class="box1">
		<div class="box2"></div>
		
	</div>
	
</body>
</html>

当需要文字(inline)居中时:line-height:容器高度;  text-align:center;(父元素)

  当需要图片居中时:可用method1或给父元素line-height:容器高度;img vertical-align:middle;



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值