当前位置: 首页 > web >正文

Vue3 里 CSS 深度作用选择器 :deep()

🎯 解释

在 Vue 组件里,CSS 默认是 scoped(作用域限定的),只对当前组件生效。
如果你想在 scoped 样式里,穿透到子组件的内部元素,就要用 :deep()


✏️ 示例

比如,你有一个子组件 Child.vue,里面有:

<template><div class="test">子组件里的元素</div>
</template>

然后你在父组件的 <style scoped> 里想去修改 Child.vue 里的 .test 样式,正常是选不到的,
这时候就用 :deep()

<style scoped>
:deep(.test) {color: red;font-size: 20px;
}
</style>

这样就可以突破 scoped 限制,直接修改 .test 这个类了!


💡 总结一下

语法意思
:deep()让你在 scoped 样式中穿透作用域,选到子组件或内部元素

⚡ 补充一点

  • :deep() 里面可以是普通选择器,比如 .class#idtag 等。
  • 也可以嵌套写,比如:
    .parent :deep(.child) {color: blue;
    }
    

扩展

✨ 1. >>> 这种(早期写法)

<style scoped>
.parent >>> .child {color: red;
}
</style>
  • >>> 是深度穿透符,意思是:从 .parent 穿透作用域,到 .child
  • 这种写法主要是 Vue2 时代流行的,Vue3 的部分构建工具还兼容。

✨ 2. ::v-deep(官方推荐的新写法)

<style scoped>
.parent ::v-deep(.child) {color: blue;
}
</style>
  • ::v-deep 是 Vue3 官方推荐的指令式深度选择器。
  • 更规范,兼容性好,以后也更不会被废弃。

🎯 小对比表

写法备注
:deep(.child)单独用,穿透到某个 class
.parent >>> .child旧版写法,少数工具链还支持
.parent ::v-deep(.child)新版推荐写法,更标准更持久

⚡ 小Tips

  • 如果你项目用的是 vitevue-cli 这些现代工具,推荐用 ::v-deep
  • >>> 这种可能将来会在某些构建工具中不支持。

🎨 一个小例子

比如父组件:

<template><div class="parent"><Child /></div>
</template>

子组件:

<template><div class="child">Hello</div>
</template>

想让 .child 变色,父组件 <style scoped> 可以写:

.parent ::v-deep(.child) {color: orange;
}
http://www.xdnf.cn/news/2561.html

相关文章:

  • HQChart k线图配置
  • BUUCTF——The mystery of ip
  • mac 设置飞书默认浏览器(解决系统设置默认浏览器无效)
  • Nacos简介—4.Nacos架构和原理二
  • [AHOI2001] 质数和分解
  • 蓝桥杯 16. 密文搜索
  • Zookeeper实现分布式锁实战应用
  • 启效云平台审核流应用场景及功能介绍
  • day51—二分法—x 的平方根(LeetCode-69)
  • Gin 框架中集成 runtime/debug 打印日志堆栈信息
  • 2025.4.22 JavaScript 常用事件学习笔记
  • 司法大模型构建指南
  • 问题四、如何解决模型轴配置问题
  • 高功率无人机动力方案首选:CKESC ROCK 220A-H CAN 电调工程性能实测
  • 开发一个LabVIEW软件需要多少钱
  • 2025通信会丨以创新技术赋能新型电力系统 锐捷知识大脑推动效率提升
  • rabbitmq常用命令
  • 代码随想录算法训练营Day37
  • Diamond软件的使用--(6)访问FPGA的专用SPI接口
  • 关于百度模型迭代个人见解:技术竞速下的应用价值守恒定律
  • Vue3项目目录结构规范建议
  • 【测控系统】测控仪器技术概述与专业选择
  • 【项目实训个人博客】multi-agent调研(1)
  • XMOS直播声卡——可支持实时音频DSP处理的低延迟音频方案
  • Web前渗透
  • JavaScript基础(七)之web APIs
  • 开源项目实战学习之YOLO11:ultralytics-cfg-datasets-VOC、xView.yaml文件(八)
  • 设计模式--桥接模式详解
  • 【C++贪心 滑动窗口】P7990 [USACO21DEC] Closest Cow Wins S|省选-
  • UE5 在旋转A的基础上执行旋转B