Добрый день!
Поэтапно разберёмся в предложенных кейсах.
Код |
---|
[B]Проблема №1[/B]
На выходе мы получаем вот такой порядок подключения файлов стилей:
page_e075568aa9986b5d0dfee9808010710e_v1.css?16443223452068
template_336e9cf2eed8f19d39118eb918a64a21_v1.css?164432234555761
Такой порядок ломает логику каскада CSS! Как должно быть:
template_336e9cf2eed8f19d39118eb918a64a21_v1.css?164432234555761
page_e075568aa9986b5d0dfee9808010710e_v1.css?16443223452068
|
В данном случае совершенно корректное поведение ядра. Стили шаблона подключаются в самом низу, для переопределения всего внешнего вида проекта.
Для описанного вами случае, есть несколько вариантов решения.
Самый простой способ:Общую часть стилей подключаемую в шаблоне, подключаем в самом конце foote.php, с установкой параметра additional в true
Код |
---|
\Bitrix\Main\Page\Asset::getInstance()->addCss( '/local/test1.css', true); |
Дополнительные стили компонент также подключаем с установкой дополнительного параметра.
Код |
---|
\Bitrix\Main\Page\Asset::getInstance()->addCss( '/local/test2.css', true); |
В итоге мы получим желаемый вариант объединения
Код |
---|
/bitrix/cache/css/s1/conservation/template_782e1ec01b08bb89e5f31b1ef9a3a4ae/template_782e1ec01b08bb89e5f31b1ef9a3a4ae_v1.css?164736151325818
.....
.wsnw { white-space: nowrap }
/* End */
/* Start:/local/test2.css?164736039612*/
.wrapper2 {}
/* End */
/* Start:/local/test1.css?164736039614*/
.wrapper1 { }
/* End */
/* /bitrix/wizards/bitrix/eshop/css/panel.css?1617173515240 */
/* /local/templates/.default/components/bitrix/menu/top/style.css?1629807017537 */
/* /local/templates/.default/components/bitrix/menu/main/style.css?1625842799953 */
/* /local/templates/.default/components/bitrix/breadcrumb/.default/style.css?1629368607712 */
/* /local/components/cons/eshop.socnet.links/templates/conservation/style.css?1628162087262 */
/* /local/templates/conservation/template_styles.css?163005979721719 */
/* /local/test2.css?164736039612 */
/* /local/test1.css?164736039614 */
|
Код |
---|
Проблема №2
Вторая проблема кроется в содержимом файла page_e075568aa9986b5d0dfee9808010710e_v1.css?16443223452068.
Порядок сборки файлов стилей вообще не имеет смысла:
|
Тут как и в третье проблеме важен порядок подключения. Если вы сразу на странице вызвали style.css или style.js то они и подключаться первыми. Вызывайте их в конце страницы.