CSS &符号

在 CSS 中,& 符号是 嵌套语法中的父选择器引用符 ,主要用于 CSS 预处理器 (如 Sass、Less、Stylus)和 现代 CSS 嵌套语法 (CSS Nesting)。它代表当前选择器的父级,用于简化嵌套规则并生成更精确的选择器。

1、实例一

第一种写法:

css

html 复制代码
.resume-dialog-wrap {
  &.t-dialog--default {
    padding: 0 !important;
  }
}

编译结果

html 复制代码
[data-v-xxxxxxx] .resume-dialog-wrap.t-dialog--default {
  padding: 0 !important;
}

解释

  • &表示将两个类选择器连接在一起,匹配同时拥有这两个类的元素

  • 这会选择同时具有resume-dialog-wrapt-dialog--default类的元素

第二种写法:

css

html 复制代码
.resume-dialog-wrap {
  .t-dialog--default {
    padding: 0 !important;
  }
}

编译结果

css

html 复制代码
[data-v-xxxxxxx] .resume-dialog-wrap .t-dialog--default {
  padding: 0 !important;
}

解释

  • 这种写法表示选择resume-dialog-wrap元素内部的t-dialog--default元素

  • 这是后代选择器的关系,不是同时拥有两个类的元素

关键区别:

  1. 第一种写法(.resume-dialog-wrap.t-dialog--default),有&连接选择器,是AND关系,无空格,匹配的是单个元素同时拥有两个类

  2. 第二种写法(.resume-dialog-wrap .t-dialog--default),无&连接选择器,有空格,空格分隔表示父子/后代关系,匹配的是一个元素内部的后代元素

2、实例二

scss

html 复制代码
.button {
  &:hover {
    color: red;
  }
}
复制代码
编译后:

css

html 复制代码
.button:hover {
  color: red;
}

& 在这里代表 .button,最终生成 .button:hover

相关推荐
GISer_Jing1 小时前
前端性能指标及优化策略——从加载、渲染和交互阶段分别解读详解并以Webpack+Vue项目为例进行解读
前端·javascript·vue
不知几秋1 小时前
数字取证-内存取证(volatility)
java·linux·前端
水银嘻嘻3 小时前
08 web 自动化之 PO 设计模式详解
前端·自动化
Zero1017134 小时前
【详解pnpm、npm、yarn区别】
前端·react.js·前端框架
&白帝&5 小时前
vue右键显示菜单
前端·javascript·vue.js
Wannaer5 小时前
从 Vue3 回望 Vue2:事件总线的前世今生
前端·javascript·vue.js
羽球知道5 小时前
在Spark搭建YARN
前端·javascript·ajax
光影少年5 小时前
vue中,created和mounted两个钩子之间调用时差值受什么影响
前端·javascript·vue.js
青苔猿猿6 小时前
node版本.node版本、npm版本和pnpm版本对应
前端·npm·node.js·pnpm
一只码代码的章鱼6 小时前
Spring的 @Validate注解详细分析
前端·spring boot·算法