2016-01-14 2 views
2

Я хотел бы определить все наши стили в пользовательской теме Liferay, которую мы разработали. Я хочу знать, можно ли использовать классы CSS, определенные в теме в проекте портлетов. Нам нужно избегать дублирования файлов css в каждом проекте портлета. Цель состоит в том, что тема контролирует все аспекты внешнего вида наших портлетов, поэтому, если мы изменим тему (или развернем портлеты в другом контейнере портала), изменится стиль портлета. Вы думаете, что это возможно?Использование темы Liferay css в портлетах

Заранее спасибо ..

+1

Да, это как тема работает в Liferay. Вы можете использовать классы css в портлете, которые определены в теме. –

ответ

3

Что вы хотите сделать это рекомендуемый способ стиль и тема и портлетов.

Стили портлета должны влиять только на макет внутри его портлета. Все остальные стили; цвета, шрифты и т. д., должны быть определены в разделе custom.css.

Я бы посоветовал вам попробовать стилизовать существующие классы портлетов, прежде чем вводить новые. Затем, если вы действительно застряли, отредактируйте portlet.vm.

Взгляните на Liferay's Political Theme:

custom.css 

... 

.portlet { 
    margin-bottom: 10px; 

    .portlet-topper { 
     padding: 0; 

     .portlet-title { 
... 
+0

Спасибо за ваш ответ! Обязательно ли иметь custom.css (названный так) в пользовательской теме? Если я правильно понял, я могу определить классы css в теме и в моем проекте портлета, я могу просто поместить эти классы в jsps? – javaxiss

+0

Привет! Я нашел ответ. можно переименовать файл custom.css или использовать много файлов css по мере необходимости. Чтобы использовать конкретный, мы должны упомянуть его в liferay-look-and-feel.properties в требуемом теге темы, как показано ниже: ' true cssFileName ' Здесь предположим, что мы определили файл CSS с именем cssFileName.css. Еще раз спасибо за ваш ответ. Это позволило мне понять взаимодействие портлета/темы. – javaxiss

Смежные вопросы