我通过将@var
传递给我的混音来设置列数,如下所示:
.author-card(@numberOfCards) {
width: 100% / @numberOfCards - 2%;
padding-bottom: 165% / @numberOfCards - 2%;
}
我希望每列都有一个margin-right: 2%
,除了最后一行。所以,我尝试做以下事情:
.author-card(@numberOfCards) {
width: 100% / @numberOfCards - 2%;
padding-bottom: 165% / @numberOfCards - 2%;
margin-right: 2%;
&:nth-of-type(n * @numberOfCards) {
margin-right: 0;
}
}
此时Less编译器无法编译。
我可以在Less中实现这一目标吗?也许有其他方法可以做到这一点?
我收到以下错误:
ParseError:myStylesheet.less
中无法识别的输入
答案 0 :(得分:4)
要执行选择器插值,您需要将变量放在大括号中,如下所示:
.author-card(@numberOfCards) {
width: 100% / @numberOfCards - 2%;
padding-bottom: 165% / @numberOfCards - 2%;
margin-right: 2%;
&:nth-of-type(@{numberOfCards}) { // note the change.
margin-right: 0;
}
}