扫码关注官方订阅号
走同样的路,发现不同的人生
position:absolute; left:50%; top:50%; transform:translate(-50%,-50%)
这种方法比较适合自身宽高和容器宽高不明确的情况
补充,自己总结的几种居中方法:
<html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style> .father { width: 100px; height: 100px; border: 1px solid red; margin: 20px; } .child { width: 50px; height: 50px; border: 1px solid red; margin-left: auto; margin-right: auto; } /* 方法一: 对子元素使用margin居中 使用场景: + 父元素高度固定; + 子元素高度固定 简单粗暴,适用于子元素和父元素的宽高都固定的情况。 */ .method1 .child { margin-top: 25px; } /* 方法二: 适用于子元素高度和宽度固定,父元素高度不固定 */ .method2 { position: relative; } .method2 .child { position: absolute; top: 50%; left: 50%; margin-top: -25px; margin-left: -25px; } /* 方法三: 子元素和父元素高度不定 利用transform来调整位置 */ .method3 { position: relative; } .method3 .child { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); } /* 方法四: 使用flex布局,利用flex-direction属性*/ .method4 { display: flex; justify-content: center; flex-direction: column; } /* 方法五: 使用flex布局,利用align-items属性*/ .method5 { display: flex; display: -webkit-flex; align-items: center; } /* 方法六: 使用table-cell布局 */ .method6 { display: table-cell; vertical-align: middle; text-align: center; } .method6 .child { vertical-align: middle; } </style> </head> <body> <p class="father method1"> <p class="child"></p> </p> <p class="father method2"> <p class="child"></p> </p> <p class="father method3"> <p class="child"></p> </p> <p class="father method4"> <p class="child"></p> </p> <p class="father method5"> <p class="child"></p> </p> <p class="father method6"> <p class="child"></p> </p> </body> </html>
设置left值吧
#p2 { width: 50px; height: 50px; background-color: red; margin: 0 auto; position: absolute; left: 50%; top: 50%; margin-left: -25px; margin-top: -25px; }
#p2{ width: 50px; height: 50px; background-color: red; margin:auto; position: absolute; top:0; bottom:0; left:0; right:0; }
不会用搜索?在社区搜一搜就有答案,何必重复这么多问题。
@_qunshan_
@_qunshan_的答案
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
这种方法比较适合自身宽高和容器宽高不明确的情况
补充,自己总结的几种居中方法:
最终效果
设置left值吧
不会用搜索?在社区搜一搜就有答案,何必重复这么多问题。
@_qunshan_
@_qunshan_的答案