元素的margin(水平和垂直margin)和padding(水平和垂直padding)百分比竟然都是相对于父元素的宽度
<div class="outer">
<div class="inner"></div>
</div>
<style>
.outer{
width: 200px;
height: 100px;
}
.inner{
width: 60px;
height: 60px;
padding-top: 10%; // 相对于父元素的宽度10%:20px
padding-left: 20%; // 相对于父元素的宽度20%:40px
margin-top: 30%; // 相对于父元素的宽度30%:60px
margin-left: 40%; // 相对于父元素的宽度40%:80px
}
</style>
![](https://img.haomeiwen.com/i24319978/b16e882975ac57cf.png)
利用此知识点的面试题
1.div水平垂直居中,并且高度永远是宽度的一半
*{
margin: 0;
padding: 0;
}
.out{
width: 800px;
height: 700px;
border:1px solid red;
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
}
.inner{
width: 500px;
background: pink;
}
.inner div{
padding:25% 0;
}
<!--让inner在out中水平垂直居中,并且inner高度永远是宽度的一半-->
<div class="out">
<div class="inner">
<div></div>
</div>
</div>
2.画一个大小为父元素宽度一半的正方形
*{
margin: 0;
padding: 0;
}
.out{
width: 800px;
height: 700px;
border:1px solid red;
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
}
.inner{
padding:25%;
background: pink;
}
<!--让inner在out中水平垂直居中,并且inner高度永远是宽度的一半-->
<div class="out">
<div class="inner"> </div>
</div>
网友评论