刚看到这段css代码,实现了一个1:1长宽比例并且随网页变化的盒子,没有明白它设置height的原理是什么?
.item {
width: 20%; background-color: red;
}
.item:before {
content: ''; display: block; padding-top: 100%;
}
三叔2016-11-01 10:25:16
伪元素 item:before 是 item 的子元素,其内容插入在 item 之前。
content: '' 使伪元素起作用,但内容高度为0。
padding 的百分比根据父元素宽度而定。
padding-top: 100% 就是 item 宽度的 100%,所以是 1:1 关系。