此问题已在此处有答案:
What is the meaning of an ampersand in Less selectors?(1个答案)
4天前关闭。
减
.list a{
.landscape&{
height: 100%;
}
}
产出
.landscape.list a {
height: 100%;
}
意思是“父母都是A型的。景观和。列表”
减
.list a{
&.landscape{
height: 100%;
}
}
产出
.list a.landscape {
height: 100%;
}
这意味着“所有具有类'landscape'且其父类具有。列表”
这就说得通了但是如果我从这些选择器中删除“a”标记,“&”只会改变的连接顺序。list和. landscape。
这有什么意义什么时候应该使用&.class
,什么时候应该使用class.&
?
2条答案
按热度按时间dwthyt8l1#
Less中的
&
表示父选择器。因此,无论你把&
放在哪里,它都会用CSS中的parent
选择器替换它,如果你在它前面有一个空格的话。如果不是,即,在
&
之前没有空格,它将成为子对象,并将选择器附加到其父对象,就像您的情况一样。参考文献:
drnojrws2#
文章"LESS CSS: Secrets of the Ampersand"很好地描述了这种差异。我将重点介绍主要用途:
后者是我的最爱。我用它来处理一些疯狂的IE问题。看看这个
我认为如果您能理解
&
的这种用法的作用,那么所有其他用法都变得显而易见。