(编辑:jimmy 日期: 2024/11/14 浏览:2)
margin
或者 left/top
配合 translate
属性实现height: 50%;
得到的结果是div的高度为0padding
,因为padding设置百分比时,参考便是父容器的宽度代码
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> <style> body{ padding: 0; margin: 0; } #box{ width: 50%; /* div处置居中 */ position: relative; transform: translate(50%, 25%); /* */ /* 此处解决div高度为body宽度的一半,并且文字垂直居中 */ padding-top: 25%; padding-bottom: 25%; line-height: 0; text-align: center; /* */ background-color: #111; color: #fff; } </style> </head> <body> <div id="box"> box123 </div> </body> </html>
效果