vue.js scss >>> 失效的问题

vue中,使用scss后,样式穿透失效的问题

如题,vue项目中样式使用scss时,对于需要穿透的样式,使用 >>> 穿透可能会不生效,解决办法也很简单:

将样式由:

css 复制代码
<style lang="scss" scoped>
.a >>> .b {
  font-size: 24px;
}
</style>

修改为:

css 复制代码
<style lang="scss" scoped>
.a /deep/ .b {
  font-size: 24px;
}
</style>

或者:

css 复制代码
<style lang="scss" scoped>
.a ::v-deep .b {
  font-size: 24px;
}
</style>

官方文档中对此也进行了说明:Scoped CSS,或者喜欢英文版的:Scoped CSS 英文版

vue中的template模板中,style中分为全局样式和局部样式,区别是是否存在scoped 属性,当你的组件中的样式中添加了scoped属性,表明你组件中的样式值作用于当前的组件,与其他页面的样式互不相关。

样式互不影响看似很不错,但是有些时候会存在一些问题,尤其是引用了第三方的ui组件后,需要修改其样式,而又不想去除scoped属性造成组件之间的样式污染,就需要使用到样式穿透,一般情况下使用 >>> 即可。但是在前端工具越来越强大方便的具体,使用一些例如scss或者less就可能造成问题。

相关推荐
BUG创建者2 分钟前
uni 拍照上传拍视频上传以及相册
前端·javascript·音视频
就是帅我不改9 分钟前
敏感词过滤黑科技!SpringBoot+Vue3+TS强强联手,打造无懈可击的内容安全防线
前端·vue.js·后端
JackJiang10 分钟前
转转客服IM系统的WebSocket集群架构设计和部署方案
前端
codeGoogle10 分钟前
大厂研发之谜:千亿投入砸出利润大缩水
前端·人工智能·后端
菲兹园长32 分钟前
CSS(展示效果)
前端·javascript·css
我的收藏手册44 分钟前
性能监控shell脚本编写
前端·git·github
fantasy_arch1 小时前
SVT-AV1编码器中实现WPP依赖管理核心调度
java·前端·av1
香香甜甜的辣椒炒肉1 小时前
vue(7)-单页应用程序&路由
前端·javascript·vue.js
高级测试工程师欧阳1 小时前
HTML 表格基础
前端
不买Huracan不改名1 小时前
安装Codex(需要用npm)
前端·npm·node.js