在 Sass 中尝试使用 /deep/ 穿透修改 Element Plus 组件样式时,若遇到 SassError: expected selector 报错,可将 /deep/ 替换为 ::v-deep。本文通过对比无效与有效的代码写法,展示了如何正确实现 scoped 样式穿透,解决样式不生效及编译错误问题。
Sass 中 /deep/ 样式穿透问题
若需覆盖 Element Plus 组件的样式,通常会考虑使用 /deep/ 进行样式穿透,但实际应用中往往发现样式并未生效,具体代码示例如下:
<style scoped lang="sass">
.main_wrapper{
padding: 0 53px
position: relative
top: -20px
}
>>> .el-tabs__item{
height: 30px
line-height: 30px
color: #fff!important
}
</style>上述写法在编译时不会报错,然而样式依然无法应用。建议尝试改用以下代码写法:
<style scoped lang="sass">
.main_wrapper{
padding: 0 53px
position: relative
top: -20px
}
/deep/ .el-tabs__item{
height: 30px
line-height: 30px
color: #fff!important
}此时会触发编译错误,SassError: expected selector
解决方案:使用 ::v-deep
针对该问题的解决思路如下:
尝试将 ::v-deep 替换原有的 /deep/ 语法,即可成功解决样式穿透问题。
<style scoped lang="sass">
.main_wrapper{
padding: 0 53px
position: relative
top: -20px
}
::v-deep(.el-tabs__item){
height: 30px
line-height: 30px
color: #fff!important
}以上就是关于在 Sass 中使用 /deep/ 修改 Element Plus 组件样式时遇到报错的处理方法,更多相关 Sass 使用 /deep/ 报错的内容,请搜索本站历史文章或继续浏览后续相关文章,感谢支持。