【问题标题】:LESS ParseError: Unrecognised inputLESS ParseError:无法识别的输入
【发布时间】:2016-07-29 20:24:29
【问题描述】:

当我在此处使用 WINLess 编译此代码时出现错误:

.icon-text-shadow (@icon-text-shadow: 0.0625rem 0.0625rem rgba(132, 108, 172, 1), 0.125rem 0.125rem rgba(132, 108, 172, 1);) {
    box-shadow: @icon-text-shadow;
    -moz-box-shadow: @icon-text-shadow;
    -webkit-box-shadow: @icon-text-shadow;
}

错误是:

ParseError: PATH\file.less 第 34 行列中无法识别的输入 126

第 126 列位于最后一个 ) 和第一个 { 我对此很陌生,但我到处搜索,仍然不知道出了什么问题。

感谢您的任何建议..

【问题讨论】:

  • 这可能会有所帮助 - stackoverflow.com/questions/9231369/…
  • 使用十六进制颜色看起来效果很好..
  • 似乎是编译器问题/错误,但将其放在引号内并转义应该可以工作 - @icon-text-shadow: ~"0.0625rem 0.0625rem rgba(132, 108, 172, 1), 0.125rem 0.125rem rgba(132, 108, 172, 1)"here。我已经避免了前缀,但这不会造成任何问题。

标签: css compilation less


【解决方案1】:

看来您刚刚发现编译器有问题。

您的代码非常好,应该可以按预期工作。罪魁祸首是第二个rgba(132, 108, 172, 1)。删除它,它会起作用。

我玩了一下,似乎当有一个逗号分隔的列表作为参数并且该列表的任何元素(不是第一个元素)包含函数调用时,总是会发生这种情况。

Aureliano 的回答中的解决方法。

【讨论】:

    【解决方案2】:

    我认为这一定是枚举的问题。试试这个:

    @icon-text-shadow-default: 0.0625rem 0.0625rem rgba(132, 108, 172, 1), 0.125rem 0.125rem rgba(132, 108, 172, 1);
    .icon-text-shadow (@icon-text-shadow: @icon-text-shadow-default) {
        box-shadow: @icon-text-shadow;
        -moz-box-shadow: @icon-text-shadow;
        -webkit-box-shadow: @icon-text-shadow; 
    }
    

    【讨论】:

      【解决方案3】:

      您正在尝试解析一个以逗号分隔的字符串,而没有 escaping 它。

      试试这个:

      .icon-text-shadow (@icon-text-shadow: ~"0.0625rem 0.0625rem rgba(132, 108, 172, 1), 0.125rem 0.125rem rgba(132, 108, 172, 1)") {
          box-shadow: @icon-text-shadow;
      }
      

      注意:不再需要为box-shadow 使用供应商前缀。

      【讨论】:

        【解决方案4】:

        检查文件编码。如果它是“带有 BOM 的 UTF-8”,那么 LESS 不能直接构建它。将编码更改为纯 UTF-8。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2014-03-27
          • 2017-04-25
          • 1970-01-01
          • 2013-11-02
          • 1970-01-01
          • 2014-02-01
          • 1970-01-01
          • 2020-06-04
          相关资源
          最近更新 更多