SquishIt генерирует пустой файл при использовании Bootstrap _:- MS-полноэкранный селектор в forms.less

Просто как предвестник, вы должны знать, что в настоящее время у меня нет возможности ссылаться на другую версию Bootstrap или использовать CDN-версию минимизированной Bootstrap.

В моем сценарии у нас есть файлы LESS из Bootstrap, на которые ссылаются наши собственные файлы LESS. Недавно, при попытке создать сжатую версию CSS с помощью SquishIt, я заметил, что выходной файл был полностью пустым.

Я проследил оскорбительную часть до форм Bootstrap.less, в частности этих хаков IE11:

// 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 исправляет ее, и все сжимается нормально, но это не похоже на правильное исправление.

Также следует отметить, что я использую Web Essentials 2013 в Visual Studio 2013 для выполнения компиляции LESS to CSS, а WE2013 сообщает мне в IDE, что селектор подчеркивания является недействительным селектором. Не уверены, является ли это МЫ ограничением, генерирующим неправильный CSS из LESS?

1 ответ

Я не знаю много о веб-основы. Вы смотрели на SquishIt.Less? Это может использовать более современную версию без точек.

Если это не без точек, я бы заподозрил проблему с минификатором. В этом случае может помочь переключение на YUI. Можно сделать это со следующим в global.asax.cs

Bundle.ConfigureDefaults().UseYuiForCssMinification()

Другие вопросы по тегам