Css 更少的编译器使一切加倍

Css 更少的编译器使一切加倍,css,less,Css,Less,我在我的项目中有一个非常简单的style.less文件,我正在使用它进行一个干净、响应迅速的设计。现在我们开始: @import "bootstrap/bootstrap.less"; @import "../css/jquery.vegas.css"; @import "../css/jquery.fancybox-1.3.4.css"; body { padding-top: 60px; padding-bottom: 40px; } @import "bootstrap/re

我在我的项目中有一个非常简单的style.less文件,我正在使用它进行一个干净、响应迅速的设计。现在我们开始:

@import "bootstrap/bootstrap.less";

@import "../css/jquery.vegas.css";
@import "../css/jquery.fancybox-1.3.4.css";

body {
  padding-top: 60px;
  padding-bottom: 40px;
}

@import "bootstrap/responsive.less";
现在,当我用更少的代码编译文件时,css输出看起来很奇怪:

.container {
  width: 940px;
  margin-left: auto;
  margin-right: auto;
  *zoom: 1;
  *zoom: 1;
  width: 940px;
  margin-left: auto;
  margin-right: auto;
  *zoom: 1;
  *zoom: 1;
}
他把一切都加倍了!当我处理我的devolper实例时,我甚至可以直接在浏览器中看到这种奇怪的行为


这太奇怪了,太可怕了,有人知道为什么会这样吗?在从引导导入的原始less文件中,所有内容只定义一次。

这里有两种可能的解决方案。它们看起来都很明显,但我有时忽略了它们

  • 您是否在实际编译的css文件中看到重复的样式规则?或者你在Firebug或Chrome的开发者工具中看到了重复的规则?如果是第二个,请返回并确保您的css文件确实有重复项

  • 我在使用更少的代码时遇到了完全相同的复制问题,直到我意识到我已经在
    中包含了两次css之后,我才明白这一点。这是个愚蠢的错误,但我以前确实犯过


  • 祝你好运。

    确保你使用的是LESS的最新版本

    如果从不同文件多次调用,
    @import
    的默认行为过去不是很聪明

    因此,引入了指令
    @import once
    ,以确保特定的less文件只包含一次,而不管在其中使用了多少个文件

    然而,他们现在已经将
    @import once
    行为设置为默认行为,即使您只是使用
    @import


    另请参见:

    响应性.less中的内容是什么?有些编译器会删除重复的规则,有些则不会…您使用的是哪个版本的LESS;哪个编译器和版本?这是一个非常重要的信息,甚至可以让你开始思考你的问题……对不起,less的版本是1.2.0,我用windows脚本主机启动它->responsive.less的内容还有一些其他导入(variables.less,mixin.less)和很多媒体查询,其中包含典型的less代码,所以。。没什么特别的,而且,就目前而言,我看不到重复的。你为什么不试着缩小问题的来源,也许是通过逐个删除
    @import
    s?是的,这将是解决问题的下一步。。我只是希望有人知道这个问题之前,可以给我一个建议,这可以很快解决:)解决!非常感谢艾默生:)第二个解决方案就是我的问题——导入:@import“bootstrap/responsive.less”;再次包含文件“variables.less”和“mixins.less”-它们已经包含在“bootstrap.less”的第一次导入中。-因此,我刚刚在responsive.less中删除了这些导入,现在一切看起来都很好:)我很高兴能提供帮助。当你有机会时,你应该把问题标记为已解决。