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就可能造成问题。

相关推荐
LV技术派3 小时前
适合很多公司和团队的 AI Coding 落地范式(三)
前端·ai编程·cursor
一只小bit3 小时前
Qt 对话框全方面详解,包含示例与解析
前端·c++·qt·cpp·页面
m0_748254663 小时前
Angular 2 模板语法概述
前端·javascript·angular.js
专注VB编程开发20年3 小时前
EDGE估计没有switch到frame的做法
前端·edge·vba
_oP_i4 小时前
Chrome浏览器自动下载的AI模型文件
前端·chrome
小小前端--可笑可笑4 小时前
【Three.js + MediaPipe】视频粒子特效:实时运动检测与人物分割技术详解
开发语言·前端·javascript·音视频·粒子特效
奔跑的web.4 小时前
JavaScript 对象属性遍历Object.entries Object.keys:6 种常用方法详解与对比
开发语言·前端·javascript·vue.js
Java程序员-小白4 小时前
Sa-Token过滤器引发的CORS误判问题
vue.js·elementui·axios·cors
OEC小胖胖4 小时前
09|DOM Renderer 的 Host 层:从 Fiber 到真实 DOM 的落地
前端·前端框架·react·开源库
xuyuan19984 小时前
超越Selenium:自动化测试框架Cypress在现代前端测试中的卓越实践(windows版本)三
前端·windows·测试工具·系统架构·cypress