为什么给.text设置的是position的relative

为什么给.text设置的是position的relative

为什么不设置absolute,

还有,为什么一定要给.text设置定位才行,如果没有position这个属性,小图标就显示不出来,不是也给元素设置了z-index属性吗,为什么会显示不出来呢

这个有什么技巧吗

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕慕子 2020-12-26 10:03:19

同学你好,对于你的问题解答如下:

1、因为text下的子元素progress设置了绝对定位,为了让绝对定位的子元素参考其父元素进行定位,所以给text设置了position:relative;相对定位属性

2、因为相对定位(relative)是参考自身的位置进行定位的,绝对定位(absolute)是参考有定位属性(static除外)的先辈元素进行定位的,如果给text设置绝对定位(absolute),还需要给text的父元素设置定位,让text参考它的父元素进行定位,这样做比较麻烦,所以直接给text设置相对定位即可。

3、因为只有给元素设置了定位属性(static除外)之后,z-index属性才会生效,如果没有定位,z-index属性就无效,那么progress设置绝对定位会覆盖在图标上显示,导致图标无法显示,所以必须给text设置定位才可以

4、一般定位遵循的规则是“子绝父相”,意思就是子元素设置绝对定位后,给父元素设置相对定位,让子元素参考父元素进行定位,方便调整样式。

祝学习愉快~

  • 提问者 慕仙0328516 #1

    progress不是text的子元素,progress是相对于file进行定位的

    2020-12-26 10:12:13
  • 好帮手慕慕子 回复 提问者 慕仙0328516 #2

    同学你好,感谢同学指出问题,progress确实不是text的子元素,progress是相对于file进行定位的

    对于同学的疑问,可以参考如下解析:

    1、由于file元素设置了相对定位,那么text设置相对定位或者绝对定位都是可以的,视频中由于老师写代码的习惯,就给file设置相对定位了,同学自己练习时,也可以尝试给text设置绝对定位。

    2、只有给元素设置了定位属性(static除外),添加的z-index属性才会生效。

    3、定位使用的技巧一般就是遵循“子绝父相”,具体的根据实际情况,灵活应用所学知识实现效果就可以了。

    非常抱歉由于老师的粗心,给同学带来不好的体验,老师以后会更加严谨的,祝学习愉快~

    2020-12-26 10:23:59
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
组件化思想开发电商网页 18版
  • 参与学习           人
  • 提交作业       467    份
  • 解答问题       4826    个

本路径带你通过系统学习HTML5、JavaScript、jQuery的进阶知识,不仅如此,还会学习如何利用组件化的思想来开发网页,知识点+案例,使得所学可以更好的得到实践。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师