【问题标题】:variable manipulation in LessLess中的变量操作
【发布时间】:2013-09-13 22:28:14
【问题描述】:

全部
我想计算页面的高度,在我的test.less

@clientHeight:`$(window).height()`;

当我使用@clientHeight时,由于jquery只返回一个数字,我需要加上px这样的单位
所以,我尝试了这些方法:
1)

div{高度:@clientHeight+px;

出来了:
height: 705 px; (注意它们之间有一个空格)
2)

@clientHeight:`$(window).height()+'px'`

出来了:
height: "705px";

【问题讨论】:

  • 我刚刚发现了一个技巧,它不是那么优雅0px+@clientHeight
  • 官方文档确实有这个例子,但他们最后没有使用'px'。所以它可能不需要。最后不包含“px”时高度是否不正确?编译后的 CSS 是否为此属性附加了“px”(这是数字和 px 之间有空格的示例)吗?

标签: javascript jquery css less


【解决方案1】:

我知道这已经很长时间了,但是如果您或其他任何人碰巧仍在寻找答案,这对我有用:

@clientHeight: unit(`$(window).height()`, px);

来自LESS函数参考:

单位

删除或更改维度的单位

【讨论】:

  • less 发送到浏览器进行编译时是否不起作用?
【解决方案2】:

我刚刚发现了一个技巧,它不是那么优雅0px+@clientHeight

【讨论】:

    【解决方案3】:

    试试这个从返回的高度值中去除空白:

    @clientHeight: `$.trim( $(window).height() ) + 'px'`;
    

    (如果不这样处理,请剖析这个,抱歉没有使用less.js,无法测试)。

    ..或使用普通的str.replace(' ', '');

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-06-13
      • 1970-01-01
      • 2012-05-30
      • 1970-01-01
      • 2013-12-22
      • 2014-01-08
      • 2018-06-01
      • 2011-06-12
      相关资源
      最近更新 更多