Scss中使用/deep/深度选择器报错

在Vue项目中,当使用带scoped属性的SCSS样式时,遇到/deep/深度选择器报错。文章介绍了这个问题的背景,展示了导致SassError的代码,并提出了解决方案——使用::v-deep替代/deep/来穿透作用域影响子组件样式。最后总结了在Vue中/deep/、::v-deep和>>>的关系及其在scss中的使用注意事项。
摘要由CSDN通过智能技术生成

scss中使用/deep/深度选择器报错
前言
一、代码
二、报错
三、解决办法
四、总结
前言
在带有scoped属性的style中书写样式时,无法作用影响到子组件中的样式,此时我们会使用到deep深度选择器,来解决此问题,我们在使用less预处理器,能正常使用,但是在scss预处理器中会报错。

一、代码
<style lang="scss" scoped>
/deep/ .el-dialog__header {
  background-color: #81ecec !important;
}
</style>


二、报错
SassError: expected selector.
    ╷
211 │ /deep/ .el-dialog__header{
    │ ^
三、解决办法
使用::v-deep深度选择器,能够解决在scss中无法解析/deep/选择器的问题

<style lang="scss" scoped>
::v-deep .el-dialog__header {
  background-color: #81ecec !important;
}
::v-deep .el-button--primary {
  background-color: #81ecec;
  border-color: #81ecec;
}
</style>
四、总结
在vue中,>>>是深度选择器,可以作用到子组件中的样式,/deep/和::v-deep都是>>>的别名,在scss中不识别/deep/, 可以使用::v-deep

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值