vue项目修改组件样式——深度作用选择器deep,样式穿透

时间:2025-03-28 13:54:07

::v-deep 与 /deep/ 都是深度选择器(样式穿透),都能实现对组件内部的样式修改;但是具体有什么区别,公司同事主张使用 ::v-deep,说是能加快编译速度。使用上就是 如果你用 /deep/ 没有生效,换一种 试试 ::v-deep 一般都是可以的.

如果使用 less 对 css 做出预处理的话,使用 /deep/ 就可以完成样式穿透的行为;
但是我使用的 scss 对 css 做出的预处理,所以不能够使用 /deep/ 而应该使用 ::v-deep 才对
<style scoped lang="scss">
//报错
/deep/ .van-checkbox__icon {
  display: flex;
  align-items: center;
}
//可以
::v-deep .van-checkbox__icon {
  display: flex;
  align-items: center;
}
</style>