这是输出需要的内容:
div.star_mask {
&.fill-0 {
width: 0%;
}
&.fill-50 {
width: 50%;
}
}
我这样做了很多次,所以我做了一个函数来生成它:
#star {
.star-fill(@width) {
(~"&.fill-@{width}") {
div { width: ~"@{width}%" }
}
}
}
div.star_mask {
#star > .star-fill(0)
}
这会生成以下 CSS:
div.star_mask &.fill-0
而不是我需要的:div.star_mask.fill-0
那么有没有办法做到这一点?我可以把&
函数调用的地方放在哪里吗?
我最终通过自己编写选择器来解决问题:div.star_mask.fill-@{width}
并将函数调用置于上一层。不过,嵌套它们仍然很酷!