1

style.less导入 Bootstrap 3.less文件,然后自定义一些变量以输出style.css

@bs-less: "../../vendor/twbs/bootstrap/less";

// Core variables and mixins
@import "@{bs-less}/variables.less";
@import "@{bs-less}/mixins.less";

// Core CSS
@import "@{bs-less}/type.less";

// Customizations
@font-family-sans-serif:  "Open Sans Condensed", sans-serif;
@font-size-base: 18px; // override working
@font-size-h1:  floor(@font-size-base * 5); // originally 2.6 (46px) changed to 5

自定义@font-size-base变量可以正常工作@font-family-sans-serif

我遇到的问题是@font-size-h1(更普遍的是@font-size-h*),它被完全忽略,即 46px 但应该在 90px 左右。我将乘法从 2.6 更改为 5。

我刚开始学习LESS,有什么我遗漏的吗?

编辑:实际上使用了type.less变量:@font-size-h1

h1, .h1 { font-size: @font-size-h1; }
4

1 回答 1

1
@font-sizer: 10;
.test(@fs){font-size:@fs*5px;}
h1{.test(@font-sizer)}
@font-sizer: 20;

结果似乎取决于您的编译器。更少的编译器可能有不同的优先级规则?

以上结果与 lessc 1.4.2 (LESS Compiler) [JavaScript] in: h1 { font-size: 100px; }alhought i can find a reason (unambiguous rule) 为什么结果不应该是h1 { font-size: 50px; }

另见:https ://github.com/twbs/bootstrap/issues/8947

于 2013-10-05T11:16:38.193 回答