为什么height设置了0就可以有50%的高度?

来源:2-7 Vue项目首页 - 图标区域页面布局

陈立天

2020-12-03 23:07:43

# 具体遇到的问题
http://img.mukewang.com/climg/5fc8ff3209d9aa7808880918.jpg# 报错信息的截图

# 相关课程内容截图

# 尝试过的解决思路和结果

# 粘贴全部相关代码,切记添加代码注释(请勿截图)

在这里输入代码,可通过选择【代码语言】突出显示

写回答

1回答

好帮手慕慕子

2020-12-04

同学你好,对于你的问题解答如下:icon的高度为25%并不是因为设置了height:0;属性,而是因为设置了padding-bottom:25%;属性。

具体可以参考如下解析:

因为padding-bottom的百分比的值是按照父元素宽度的值计算,我们假设屏幕的总宽度是800px

icon所在区域的高度,是由给swiper-container设置的padding-bottom:50%;撑起来的,即:400px

http://img.mukewang.com/climg/5fc9cdfb09cc6bb515660348.jpg

icon设置width:25%;后,那么此时每个icon的宽度就是200px,给icon设置padding-bottom:25%; 它会参考他的父元素宽度800计算,即200px,所以就形成了每个icon的高度为icon所在区域高度的一半的效果,如下图所示:

http://img.mukewang.com/climg/5fc9cf1f0958af8716330647.jpg

因为overflow:hidden;属性生效的条件是元素设置了固定的height属性值,所以设置height:0;属性,是为了结合overflow:hidden;属性实现超出隐藏的效果。

祝学习愉快~

0

0 学习 · 10739 问题

查看课程