scss-&父选择器标识符

  在使用选择器嵌套的时候有一种情况需要特别注意,先看一段scss代码实例:

.text a {
  color: blue;
  :hover { color: red }
}

  也许写此段代码目的是为了将其编译成如下css代码:

.text a {
  color: blue;
}
.text a:hover {
  color: red;
}

  但是现实并非如此,它会按照选择器嵌套原则将其编译成如下css代码:

.text a {
  color: blue;
}
.text a :hover {
  color: red;
}

  上面的代码实现的效果是: class为text的所有后代a标签的所有后代元素,当鼠标悬浮时,字体颜色都会变为红色。

  这个时候就可以使用&父选择器标识符,它的作用就相当于一个父选择器的占位符。可以实现class为text的所有后代a标签的元素,当鼠标悬浮时,字体颜色都会变为红色。

.text a {
  color: blue;
  &:hover { color: red }
}

  上面的代码编译的时候,会将&替换为父选择器a,编译后的css代码如下:

.text a {
  color: blue;
}
.text a:hover {
  color: red;
}

  当然,&父选择器标识符并不仅仅用于链接伪类选择器,看如下scss代码实例:

#content aside {
  color: red;
  body.ie & { color: green }
}

  编译为css代码如下:

#content aside {color: red};
body.ie #content aside { color: green }

 

转载于:https://www.cnblogs.com/ibabyli/p/9856351.html

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值