Closed
Description
Hi everybody, thank for your great work!
I'm using LESS on a projet where we have one color by master page, so all the children page use 1 different color for a lot of background, hover, color, border... depending of it parent.
I can't simply use a class .background-color for all my elements to colorize for example, for several reasons.
I wanted to create one variable with all the selectors to colorize, for example :
@background-color : ~'selector1, selector2:hover, selector3 ...';
@text-color : ~'selector4, selector2:hover, selector10 ...';
@border-color : ~'selector4, selector2:hover, selector10 ...'
And after that, using my page parent class name :
.master-1 {
@{background-color} { background-color:@color1;}
}
.master-2 {
@{background-color} { background-color:@color2;}
}
But the issue is that the output should be :
.master-1 selector1, .master-1 selector2:hover, .master-1 selector3 {
background-color:black;
}
And in fact, it's :
.master-1 selector1, selector2:hover, selector3 {
background-color:black;
}
To summarize :
.master-page-1 {
.selector-1, .selector-2 {
background-color:@color1;
}
}
.master-page-2 {
.selector-1, .selector-2 {
background-color:@color2;
}
}
And
@my-selector: ~'.selector-1, .selector-2';
.master-page-1 {
@{my-selector} {
background-color:@color1;
}
}
.master-page-2 {
@{my-selector} {
background-color:@color2;
}
}
Should output the same CSS, but only the first is correct :
.master-page-1 .selector-1, .master-page-1 .selector-2 {
background-color:black;
}
.master-page-2 .selector-1, .master-page-2 .selector-2{
background-color:black;
}
The second output :
.master-page-1 .selector-1, .selector-2 {
background-color:grey;
}
.master-page-2 .selector-1, .selector-2 {
background-color:grey;
}
Do you have any idea about this?