采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
这节课里对状态元素设置了高度,是在父组件写的样式,使用到了两个子组件内部的class。我记得我之前遇到组件样式不符合这里的要求,需要自定义的时候,要使用/deep/做个样式穿透才可以搞定的,为什么在这里不需要穿透了呢?是Vue3的不需要样式穿透了吗?
同学你好 子组件内部的 class 是不会改变的,如果你在 子组件内部添加了 scoped 样式,它是通过 data 节点另外添加的样式。 比如
<style scoped lang=
"less"
>
.example
{
color:red;
}
</style>
<template>
<div class=
"example"
scoped测试案例
</div>
</template>
会转换成
.example[data-v-5558831a] {
color: red;
data-v-5558831a>scoped测试案例</div>
是不会影响原来的 class 名称的
感谢老师,我明白为什么要使用穿透了。 之前没看清楚,以为class的名字会加后缀,原来class是不变的啊。 虽然class不变,但是里面的选择器会被加上一个属性选择器,这样就比原来的选择器优先级更高一点。所以像原来那样写优先级就不够了,无法覆盖样式,只能用穿透。 而这节课里面子组件并没有写样式声明,所以直接用类选择器就可以了
登录后可查看更多问答,登录/注册
带你完成前后端分离复杂项目,率先掌握 vue3 造轮子技能
1.5k 2
1.2k 2
873 17
1.3k 17
1.9k 15
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号