首先为什么我们会要使用到样式穿透呢? 因为我们在给第三方组件要自定义一些样式的时候,有时候会发现设置了样式是不生效的,这时候我们使用样式穿透就可以看到我们自定义样式的效果了
生效的情况:
在vue中通常会给组件的style标签上加一个scoped属性,这样可以让在该标签下的css样式私有化,只为当前该组件服务,主要是通过'data-xxx-xxx'属性进行区分,在这个属性的作用域或带有这个属性作用域的选择器时,你设置的这个样式就会生效的。
不生效的情况
在没有'data-xxx-xxx'属性的选择器上设置样式时就不会生效了。
css----箭头三剑客
语法: 选择器 <<< 选择器 {样式}
vue2中less/scss的样式穿透
/deep/ : 在你要穿透的选择器前加上即可
语法:
/deep/ 选择器 {样式}
::deep:使用方式与/deep/同理,当/deep/不生效时,可以使用
语法:
::deep 选择器 {样式}
vue3中的样式穿透
:v-deep或者::v-deep
语法:
:v-deep(选择器) {样式} 或者 ::v-deep(选择器){样式}
来自前端小白的浅层想法,有误还望大佬多多包含,帮助小白指正一下下啦