CSS实现盒子模型水平居中、垂直居中、水平垂直居中的多种方法
CSS实现盒子模型水平居中的方法
水平居中效果图
水平居中
全局样式
.parent { color: #FFFFFF; height: 200px; width: 200px; margin: 0 auto;
background-color: #000000; } .child { width: 50px; height: 50px;
background-color: #26f12d; }
第一种:margin+width
这种方法适用于已经知道width的盒子,实现起来比较简单
<div class="parent"> <div class="child"></div> </div> .child { width: 50px;
margin: 0 auto; }
第二种:text-align+inline-block
这种方法适用于多种场景(width不固定)
<div class="parent"> <div class="child"></div> </div> .parent { text-align:
center; } .child { display: inline-block; }
第三种:float+position
这种方法适用于多种场景(width不固定)
<div class="parent"> <div class="between"> <div class="child"></div> </div>
</div> .between { position: relative; left: 50%; float: left; } .child {
position: relative; right: 50%; }
第四种:
这种方法适用于多种场景(width不固定)
<div class="parent"> <div class="between"> <div class="child"></div> </div>
</div> .parent { position: relative; } .between { position: absolute; left:
50%; } .child { position: relative; right: 50%; }
第五种:flex
这种方法适用于多种场景(width不固定)
<div class="parent"> <div class="child"></div> </div> .parent { display:
-webkit-box; -webkit-box-pack: center; -webkit-box-orient: horizontal; }
第六种:fit-content
这种方法适用于多种场景(width不固定)
<div class="parent"> <div class="between"> <div class="child"></div> </div>
</div> .between { width: -webkit-fit-content; margin: 0 auto; }
CSS实现盒子模型垂直居中的方法
垂直居中效果图
垂直居中
第一种:position
这种方法适用于已经知道width的盒子
<div class="parent"> <div class="child"></div> </div> .parent { position:
relative; width: 200px; height: 200px; } .child { position: absolute; margin:
75px 0; }
第二种:position+transform
这种方法适用于已经知道width的盒子
<div class="parent"> <div class="child"></div> </div> .parent { position:
relative; width: 200px; height: 200px; } .child { position: absolute; top: 50%;
transform: translate(0%, -50%); }
第三种:flex布局
这种方法适用于多种场景(width不固定)
<div class="parent"> <div class="child"></div> </div> .parent { display: flex;
align-items: center; }
第四种:table-cell布局
这种方法适用于多种场景(width不固定)
<div class="parent"> <div class="between"> <div class="child"></div> </div>
</div> .parent { display: table; } .between { display: table-cell;
vertical-align: middle; }
CSS实现盒子模型水平垂直居中方法
水平垂直居中效果图
水平垂直居中
第一种:
<div class="parent"> <div class="child"></div> </div> .parent { position:
relative; } .child { position: absolute; left: 50%; top: 50%; transform:
translate(-50%,-50%); }
第二种:
<div class="parent"> <div class="child"></div> </div> .parent { position:
relative; } .child { position: absolute; top: 0; bottom: 0; left: 0; right: 0;
margin: auto; }
第三种:
<div class="parent"> <div class="child"></div> </div> .parent { position:
relative; } .child { position: absolute; top: 50%; left: 50%; margin-top:
-25px; /* 自身 height 的一半 */ margin-left: -25px; /* 自身 width 的一半 */ }
热门工具 换一换