В нашем проекте где используем БЭМ заметили интересное поведение для некоторых свойств CSS при переопределении и при семантическом объединении борщиком.
[borschik,
techOptions: {
semanticMerging: true
},
//...
]
Это проявляется на старых браузерах или браузере с обрезанным функционалом.
Если свойство, к примеру background
объявить в обобщенном виде, а не отдельно по параметрам, пример:
.block {
background: url(i/arrow.png) center center no-repeat;
}
При это в дальнейшем переопределить одно из указанных свойств
.block {
background-image: url(i/yellow-arrow.png);
}
То переопределение может сработать не корректно, и часто поведение (особенно на short-браузерах) будет похоже на гейзенбаг.
Решение пока нашли в том, что все свойства объявляем подробно:
.block {
background-image: url(i/arrow.png);
background-position: center center;
background-prepeat: no-repeat;
}
Уточнение: эта проблема не про
borschik
, а про используемый оптимизатор CSS (например,CSSO
илиclean-css
, вызываемые под капотом). В случае сclean-css
есть опция про совместимость со старыми браузерами (https://www.npmjs.com/package/clean-css#how-to-set-a-compatibility-mode), попробуй ее.