Bootstrap 4. Минификация CSS дает неверные результаты
Я установил Bootstrap 4.0-alpha с Bower, и теперь у меня есть каталог dist с предварительно скомпилированными bootstrap.css и bootstrap.min.css. В среде разработки я стараюсь использовать не сжатую версию, а минимизированную версию при развертывании. Я использую Laravel Elixir для выполнения своих задач. После сжатия некоторые стили начальной загрузки были изменены. Например, тег h1 имеет "margin-top: 0.67em" (это произошло, потому что у "margin-top: 0px" более низкий приоритет). Конечно, я могу просто использовать предварительно сжатый файл из каталога dist, что вполне нормально. Но если это проблема моего минификатора, я боюсь, что это приведет к неправильным результатам в дальнейшем развитии. Итак, мой вопрос: почему это происходит?
1 ответ
В цепочке сборки Bootstrap используются grunt-contrib-css
который использует clean-css
(версия 3.4.6)
В Gruntfile.js опция noAdvanced: true
был установлен. Насколько я понимаю, это не вариант для grunt-contrib-css
ни clean-css
, Вместо advanced: false
должно быть установлено:
cssmin: {
options: {
// TODO: disable `zeroUnits` optimization once clean-css 3.2 is released
// and then simplify the fix for https://github.com/twbs/bootstrap/issues/14837 accordingly
compatibility: 'ie9',
keepSpecialComments: '*',
sourceMap: true,
advanced: false
},