在 Less 中使用之后而不是之前定义变量是否可以?

Is it fine to define a variable after it is used in Less and not before?

所以,问题实际上是使用它是否合适:

.mytest {
  border:1px solid @black;
}
@black: #000;

而不是

@black: #000;
.mytest {
  border:1px solid @black;
}

我在执行此操作时没有看到任何警告并且工作正常 - 结果是

.mytest {
  border: 1px solid #000;
}

对于这两种情况。

Demo

是的,以这种方式使用它绝对没问题,因为 Less lazy loading 变量,因此在使用变量之前声明变量不是强制性的。由于延迟加载,Less 编译器不会在这种情况下抛出任何错误或警告。

根据Less website

Variables are lazy loaded and do not have to be declared before being used.

事实上,我什至会继续说,在最后声明变量更有益,因为所有变量都保存在一个地方,并且它没有为意外覆盖预期或预期设置的一些杂散声明留下空间。

是的,你可以像哈利说的那样。我建议你创建一个文件来存储你所有的变量定义并导入它。这样你就可以有不同的主题(文件)并配置你的项目只是替换一个文件