less.css:用于多个选择器的escape插值字符串

时间:2012-11-25 17:46:51

标签: less mapnik

[答案:carto.css编译器不支持less.css的这个功能]

我正在制作TileMill的样式表,该样式表将使用Carto(less.css的扩展名)进行处理。换句话说,我正在制作一个使用LESS的样式表,它使用一些自定义语法。

我有一个将变量分配给变量的选择器列表,如下所示:

@water: "[natural='water'], [waterway='river'], [waterway='stream'], [waterway='waterfall'], [waterway='canal'], [landuse='reservoir'], [landuse='basin'], [amenity='pool'], [amenity='swimming_pool'], [amenity='fountain']"; 

@dirt: "[natural='beach'], [natural='sand'], [natural='scree'], [landuse='bedrock outcrop'], [landuse='quarry'], [natural='land'], [amenity='track']";

我希望能够在我的样式表中使用这些作为选择器,或多或少像这样(这不起作用):

(~'@{water}') { polygon-fill: #bbb; }

我想在样式表中最终得到的是:

[natural='water'], [waterway='river'], [waterway='stream'], [waterway='waterfall'], [waterway='canal'], [landuse='reservoir'], [landuse='basin'], [amenity='pool'], [amenity='swimming_pool'], [amenity='fountain']{ polygon-fill: #bbb; }

我希望有一种方法可以加入选择器组,如下所示:

@water, @dirt { polygon-fill: #bbb; }

感谢您的任何建议。