无法使用LESS在Twitter Bootstrap中重新定义@ font-size-h *?

时间:2013-10-05 10:16:23

标签: css twitter-bootstrap less twitter-bootstrap-3

我的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; }

1 个答案:

答案 0 :(得分:1)

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

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

上面的结果与lessc 1.4.2(LESS编译器)[JavaScript]在:h1 { font-size: 100px; }我认为我可以找到一个理由(明确的规则)为什么结果不应该是h1 { font-size: 50px; }

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