这就是我已经拥有的:
.coloring(@color){ color:@color; }
但这就是我真正想要做的事情:
.coloring(@color,@important:''){ color:@color @important; //etc }
所以我可以打电话:
.coloring(@color,!important);
但是我收到错误消息“ParseError:Unrecognized input”
有没有办法告诉这个mixin optoinally使用“!important”的CSS语句?
解决方法
见
The !important keyword.例如可以使用.coloring(红色)!重要;没有混合变化.
或者使用转义为修改后的mixin! mixin参数值中不允许使用符号(即.coloring(red,〜’!important’);).
或者使用转义为修改后的mixin! mixin参数值中不允许使用符号(即.coloring(red,〜’!important’);).
另请注意,@ important参数的默认值”不正确,因为省略此参数的mixin调用将导致无效的颜色:color”; CSS(使用@important …或@important:〜”如果需要“空”默认值).
附:另外,请不要错过,您可以将color和!important值作为单个参数提供,即.coloring(red〜’!important’);也是调用原始单参数mixin的正确方法(如果你只需要color属性来使!important修饰符与.coloring(红色)相反!important;语法where!important适用于mixin中的所有CSS属性).