【问题标题】:css expression causes less errorcss 表达式导致更少的错误
【发布时间】:2014-07-18 12:29:25
【问题描述】:

我正在使用 LESS,我必须编写这段代码

*zoom: expression(
    this.runtimeStyle.zoom="1",
    this.insertBefore(
        document.createElement("div"),
        this.childNodes[0]
    ).className="before",
    this.appendChild(
        document.createElement("div")
    ).className="after"
);

但它给了我更少的语法错误。 你能帮帮我吗?

【问题讨论】:

  • 需要支持 IE 5 / 6 / 7,还是可以简单地将其替换为 :before:after 的样式?
  • 看起来他们需要支持 IE7,因为 * 前缀
  • Less 不支持供应商 CSS 语法扩展,例如 MS expression。尽管通过转义不支持的符号,您仍然可以在输出中获得任何内容,但在这种特殊情况下,将这些属性移动到单独的 css 文件中并将其包含到主文件中会更简单as @import (inline) "ms-expressions.css";(这样 Less 根本不会尝试解析它并“按原样”输出)。
  • @seven-phases-max 为什么在这里添加评论而不回答问题?现在这个问题仍然被标记为未回答
  • @Bass Jobsen 我的错,通常我懒得不提供与答案匹配的完整细节和漂亮的格式。我知道这不好,但正在尝试补救。

标签: css less css-expressions


【解决方案1】:

Less 不支持供应商 CSS 语法扩展,例如 MS expression。尽管通过转义不支持的符号,您仍然可以在输出中获得任何内容,但在这种特殊情况下,将这些属性移动到单独的 css 文件中并将其包含到您的主文件中会更简单与:

@import (inline) "ms-expressions.css"; 

这样,Less 只会“按原样”注入其内容,而不会尝试解析其中的任何内容。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-16
    • 1970-01-01
    相关资源
    最近更新 更多