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
相关推荐
likeyi071 分钟前
require 和 import的区别
开发语言·前端
pany28 分钟前
做 AI 友好的开源 Vue3 模板 🌈
前端·vue.js·ai编程
小二·1 小时前
React 19 + Next.js 15 现代前端开发实战:App Router / Server Components / 流式渲染
前端·javascript·react.js
谙忆10242 小时前
前端图片直传对象存储:OSS/S3 预签名 URL、STS 临时凭证与回调校验
前端
CHNE_TAO_EMSM3 小时前
Android studio 打开文件时自动下载源码
前端·javascript·android studio
一孤程4 小时前
Airtest自动化测试第五篇:小程序与Web测试——跨平台自动化全覆盖
前端·自动化测试·小程序·自动化·测试·airtest
IT_陈寒4 小时前
SpringBoot自动配置不是你以为的那样的智能
前端·人工智能·后端
yume_sibai5 小时前
大屏数据可视化 - 边框红绿呼吸灯实现详解
前端·信息可视化·typescript
Hyyy5 小时前
很多Desktop都在上的Computer Use是什么
前端·llm
慢功夫5 小时前
开篇:VS Code 为什么不是一个普通 React App
前端·visual studio code