如何在 Less 中以简短的方式指定兄弟选择器?
How to specify sibling selector in Less in short way?
我有以下 less 规则:
.menu-link {
& + .menu-link {
border-left: 1px solid #000;
}
}
它工作正常但看起来很丑,因为如果我的 menu-link
class 发生变化,我需要更换两个地方。
有没有办法简化上面的规则?
The &
operator represents the parent selectors of a nested rule and is most commonly used when applying a modifying class or pseudo-class to an existing selector.
由于 &
代表 parent,您可以简单地使用 & + &
:
.menu-link {
& + & {
border-left: 1px solid #000;
}
}
..编译为:
.menu-link + .menu-link {
border-left: 1px solid #000;
}
作为旁注,&
指的是整个 parent 选择器。因此,如果您要使用以下内容:
.parent {
.menu-link {
& + & {
border-left: 1px solid #000;
}
}
}
..它会编译为不希望的结果:
.parent .menu-link + .parent .menu-link {
border-left: 1px solid #000;
}
因此您需要保持选择器简单并使用
.menu-link {
& + & {
border-left: 1px solid #000;
}
}
我有以下 less 规则:
.menu-link {
& + .menu-link {
border-left: 1px solid #000;
}
}
它工作正常但看起来很丑,因为如果我的 menu-link
class 发生变化,我需要更换两个地方。
有没有办法简化上面的规则?
The
&
operator represents the parent selectors of a nested rule and is most commonly used when applying a modifying class or pseudo-class to an existing selector.
由于 &
代表 parent,您可以简单地使用 & + &
:
.menu-link {
& + & {
border-left: 1px solid #000;
}
}
..编译为:
.menu-link + .menu-link {
border-left: 1px solid #000;
}
作为旁注,&
指的是整个 parent 选择器。因此,如果您要使用以下内容:
.parent {
.menu-link {
& + & {
border-left: 1px solid #000;
}
}
}
..它会编译为不希望的结果:
.parent .menu-link + .parent .menu-link {
border-left: 1px solid #000;
}
因此您需要保持选择器简单并使用
.menu-link {
& + & {
border-left: 1px solid #000;
}
}