作为一个先驱,你应该知道我目前没有选择引用另一个版本的 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?