在vue中 设置样式 style是 希望组件样式唯一,通常会使用scoped,当一个style标签拥有scoped属性时候,它的css样式只能用于当前的Vue组件,可以使组件的样式不相互污染。
但如果想修改组件中引用的其他组件的样式时就需要利用scoped的穿透,或者scoped看起来很好用,当在Vue项目中,当我们引入第三方组件库时(如使用vue-awesome-swiper实现移动端轮播),需要在局部组件中修改第三方组件库的样式,而又不想去除scoped属性造成组件之间的样式覆盖。这时我们可以通过特殊的方式穿透scoped。
stylus的样式穿透 使用 >>>
外层 >>> 第三方组件
样式
.wrapper >>> .swiper-pagination-bullet-active
background: #fff
sass和less的样式穿透 使用/deep/
外层 /deep/ 第三方组件 {
样式
}
.wrapper /deep/ .swiper-pagination-bullet-active{
background: #fff;
}
参考文档链接: https://segmentfault.com/a/1190000015932467
在Vue项目中,使用scoped属性可以防止样式污染,但若需修改第三方组件样式,可通过stylus的>>>或sass/less的/deep/穿透方式。文章介绍了如何在保留scoped的同时,针对vue-awesome-swiper等组件进行样式定制,避免样式冲突。
636

被折叠的 条评论
为什么被折叠?



