Vue中scoped穿透的几种方法【总结】
1.什么是scoped
在Vue文件中的style标签上有一个特殊的属性,scoped。当一个style标签拥有scoped属性时候,它的css样式只能用于当前的Vue组件,可以使组件的样式不相互污染。如果一个项目的所有style标签都加上了scoped属性,相当于实现了样式的模块化
2.scoped穿透的方法
(1)stylus的样式穿透 使用>>>
外层>>> 第三方组件{
样式
}
例如:
.container >>> .swiper-pagination-bullet-active{
background-color: rgba(0, 0, 0, 1)
}
(2)sass和less的样式穿透 使用/deep/
外层 /deep/ 第三方组件{
样式
}
例如:
.container /deep/ .swiper-pagination-bullet-active{
background-color: rgba(0, 0, 0, 1)
}
3.在组件中修改第三方组件库样式的其它方法
- 不使用scoped方法(这种办法可能会导致样式重复。不推荐使用)
- 在vue组建中使用两个style标签,一个加上scoped属性,一个不加scoped属性,把需要覆盖的css样式写在不加scoped属性的style标签里
- 建立一个reset.css(基础全局样式)文件,里面写覆盖的css样式,在入口文件main.js 中引入