less中&的一点方法

前言 在写vue组件的时候,css使用的是less。有一个样式,总是出不来,后来查了下是自己对于less的用法不了解。下面直接上代码。

当做父级类

.head{
  height: 100px;
  width: 100px;
  border: 1px solid gainsboro;
  background-color: #000000;

  .content{
    background-color: #fff;
  }

  &.body{
    background-color: #72cc26;
  }

}

这段less编译之后为:

.head {
  height: 100px;
  width: 100px;
  border: 1px solid gainsboro;
  background-color: #000000;
}
.head .content {
  background-color: #fff;
}
.head.body {
  background-color: #72cc26;
}

这里我们可以看到在类前面添加了&之后,编译之后的css变为且的关系,而没有使用&的css是父子的关系。

这里需要注意.a.b和.a .b之间的区别,.a.b 是且的关系意思就是2者必须都具备,而.a .b是上下级,父子关系

<!--.a.b-->
<div class="a b"></div>
<!--.a .b-->
<div class="a">
    <div class="b"></div>
</div>

改变选择器的顺序

.head{
  height: 100px;
  width: 100px;
  border: 1px solid gainsboro;
  background-color: #000000;

  .content{
    background-color: #fff;
  }

  .content &{
    background-color: #fff;
  }

}

编译后:

.head {
  height: 100px;
  width: 100px;
  border: 1px solid gainsboro;
  background-color: #000000;
}
.head .content {
  background-color: #fff;
}
.content .head {
  background-color: #fff;
}

组合排列

p, a, ul, li {
  border-top: 2px dotted #366;
  & + & {
    border-top: 0;
  }
}

编译后:

p,
a,
ul,
li {
  border-top: 2px dotted #366;
}
p + p,
p + a,
p + ul,
p + li,
a + p,
a + a,
a + ul,
a + li,
ul + p,
ul + a,
ul + ul,
ul + li,
li + p,
li + a,
li + ul,
li + li {
  border-top: 0;
}

&会把所有的可能性都排列出来。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 专业考题类型管理运行工作负责人一般作业考题内容选项A选项B选项C选项D选项E选项F正确答案 变电单选GYSZ本规程...
    小白兔去钓鱼阅读 13,301评论 0 13
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 28,403评论 1 45
  • 小花花,愿你来世做一个善人 作者:雪莲芬芳 今世投胎为狗者,命运各各不同,种族高贵,几分颜值,成了...
    雪莲芬芳H阅读 5,407评论 16 40
  • 关于孩子的学习和成绩,在父母的印象中,希望一直是好成绩,成绩好的还要再好,已经很好的还希望更好。 孩子本来已经是重...
    红日艳阳阅读 1,207评论 0 0

友情链接更多精彩内容