CSS作用域穿透选择器

:deep

名称:CSS作用域穿透选择器

核心作用

  1. 穿透样式隔离 允许父组件样式影响子组件的深层元素,解决组件化开发中样式被隔离的问题。
  2. 覆盖第三方组件样式 当使用 UI 库(如 Element UI、Ant Design)时,直接修改子组件内部元素的样式。

vue3语法 新版语法 ::v-deep:deep

:deep称为CSS作用域穿透选择器,在vue中,默认有样式作用域隔离(通过<style scoped>)。若需要覆盖子组件样式,需用 ::v-deep(Vue 3 推荐,取代废弃的 /deep/>>>)。

css 复制代码
/* Vue 3 语法 */
::v-deep(.child-class) {
  color: red;
}

/* 简写(某些预处理器如 SASS 可能需要括号) */
:deep(.child-class) {
  color: red;
}

vue2语法 旧版语法 /deep/>>>

css 复制代码
/* Vue 2 或旧版语法 */
.parent-class /deep/ .child-class {
  color: red;
}

/* 或 */
.parent-class >>> .child-class {
  color: red;
}

注意事项

  1. 谨慎使用 过度使用会破坏组件独立性,应优先通过组件接口(如 Props)或 CSS 变量(--custom-color)修改样式。
  2. 替代方案 现代框架推荐通过 CSS 变量或 :global(如 CSS Modules)实现样式共享。
  3. 废弃语法 /deep/>>>、Vue 3 推荐 ::v-deep
相关推荐
WayneYang2 小时前
Node.js 全栈知识点详细整理(含代码示例 + 前端结合实战)
前端·node.js
土拨鼠爱coding2 小时前
Chrome插件 - DIY Theme
前端·chrome
GreenTea2 小时前
Deep Dive into Claude Code:源码泄漏引发的AI Agent架构全解析
前端·人工智能·后端
RePeaT2 小时前
【Next.js】基础知识速查
前端·react.js·next.js
yyuuuzz2 小时前
独立站搭建:从入门到避坑实战
前端·git·github
OpenTiny社区3 小时前
WebSkill —— 运行在浏览器的 Agent 技能
前端·开源·ai编程
Amos_Web3 小时前
Solana 智能合约编译问题排查与修复总结
前端·rust·区块链
颜酱3 小时前
从零实现「拍照记单词」小应用(可复刻版)
前端·javascript·人工智能
大猫会长3 小时前
AudioContext给音频提高音量
前端·javascript·音视频