angle-left

Проблемы с подключением CSS в многоколоночном режиме Liferay 7.2

Доброе утро

Сегодня хочу написать о подключении CSS файлов в многоколоночном режиме в Liferay 7.2.

Проблема

В Liferay 7.2 при многоколоночном режиме CSS файлы некоторых портлетов могут не загружаться. CSS правила портлетов помогут перекрываться CSS правилами других портлетов.

Попытки решения

  1. Общий CSS файл для всех портлетов на странице.
  2. Сделать уникальное название каждого CSS файла. Для каждого портлета создать уникальный префикс для CSS классов.

Подробное описание

При разворачивании портлетов в двухколоночном режиме было замечено, что CSS файл одного из портлетов не был загружен. Как далее выяснилось, оба портлета загружали один CSS файл, т.к. путь к CSS файлам портлетов был одинаковый “css/main.css”. После переименования файлов в “portlet1.css” и “portlet2.css” для первого и второго портлета соответственно, проблема была решена. 

Оказалось, что Liferay 7.2 не умеет обрабатывать такую ситуацию, и при одинаковом пути к СSS файлам один из них не будет загружен, но на этом проблемы с CSS в многоколоночном режиме не закончились.

При дальнейшем рассмотрении появилась другая проблема. CSS правила на этой странице стали пересекаться между двумя портлетами. Решением этой проблемы было выставление префиксов CSS классов для каждого портлета. После этих фиксов стили на странице начали нормально отображаться.  

На этом всё. Удачи!