如果您在LESS中使用@import(reference)
,然后在不使用(引用)的情况下导入相同的LESS文件,则会忽略后续导入。
e.g。
Stylesheet1:
#In1 { background-color: red; }
Stylesheet2:
@import (reference) 'Stylesheet1.less';
#In2 { background-color: blue; #In1; }
Stylesheet3:
@import 'Stylesheet2.less';
@import 'Stylesheet1.less';
#In3 { background-color: green; }
所以Stylesheet2导入stylesheet1但指示LESS不输出导入文件中的样式,除非使用它们(按照#In1; mixin)
Stylesheet3然后导入Stylesheet2,不知道它已经导入了Stylesheet1。 然后它导入没有(reference)指令的Stylesheet1,目的是直接输出样式。
预期输出:
#In2 { background-color: blue; background-color: red; }
#In1 { background-color: red;}
#In3 { background-color: green;}
实际输出:
#In2 { background-color: blue; background-color: red; }
#In3 { background-color: green;}
我在import语句中错过了一个选项来完成这项工作,或者这是LESS(或web-essentials2012s' LESS的实现)中的一个错误。
找到原因之后,我可以很容易地交换Stylesheet3中的进口报表,问题就会消失,但是我更愿意找到一个不需要知道导入的LESS内容的解决方案文件。