1

作为一个先驱,你应该知道我目前没有选择引用另一个版本的 Bootstrap 或使用缩小的 Bootstrap 的 CDN 版本。

在我的场景中,我们自己的 LESS 文件引用了来自 Bootstrap 的 LESS 文件。最近,在尝试使用 SquishIt 生成 CSS 的压缩版本时,我注意到输出文件完全是空的。

我将有问题的部分追溯到 Bootstrap 的 forms.less,特别是这些 IE11 hack:

// IE 11 hack to reverse the iOS temporal input hack.
_:-ms-fullscreen, :root input[type="date"],
_:-ms-fullscreen, :root input[type="time"],
_:-ms-fullscreen, :root input[type="datetime-local"],
_:-ms-fullscreen, :root input[type="month"] {
  line-height: @line-height-base;

  &.input-sm {
    line-height: @line-height-small;
  }
  &.input-lg {
    line-height: @line-height-large;
  }
}

有谁知道为什么这个特定的块会生成破坏压缩并导致输出空文件的 CSS?是下划线选择器吗?注释掉这个 LESS 部分可以修复它并且一切都可以很好地压缩,但这似乎不是正确的修复。

另外值得注意的是,我在 Visual Studio 2013 中使用 Web Essentials 2013 对 CSS 进行 LESS 编译,而 WE2013 在 IDE 中告诉我下划线选择器是无效选择器。不确定这是否是我们限制从 LESS 生成不正确的 CSS?

4

1 回答 1

1

我对网络必需品了解不多。你看过 SquishIt.Less 吗?它可能使用最新版本的 dotless。

如果它不是无点的,我怀疑是缩小器问题。如果是这种情况,切换到 YUI 可能会有所帮助。可以在 global.asax.cs 中使用以下内容

Bundle.ConfigureDefaults().UseYuiForCssMinification()

于 2016-04-26T17:54:08.320 回答