2012-11-27 35 views
0

我目前正在做一個web應用程序的菜單,我想爲該應用程序的其餘部分使用的主題使用不同的主題。 我使用PrimeFaces的默認主題,雖然它可能稍後會更改,並且菜單的自定義主題,我使用jQuery主題滾輪(http://jqueryui.com/themeroller) 我想將此主題應用於只有主菜單,這是在一個CSS文件中定義:如何在特定區域使用不同的jQuery主題?

#top { 
position: relative; 
background-color: #333367; 
color: white; 
padding: 2px; 
margin: 0px 0px 2px 0px; 
max-height: 60px;}  

我可以申請定製主題中使用的整個應用程序

<context-param> 
    <param-name>primefaces.THEME</param-name> 
    <param-value>custom-theme</param-value> 
</context-param>  

但它不應用於特定區域 的菜單在我的模板中定義在這裏:

<div id="top"> 
     <ui:insert name="menu"> 
      <ui:include src="../snippets/menu.xhtml"/> 
     </ui:insert> 
    </div>  

有沒有人有建議只使用菜單的自定義主題?

謝謝

+0

我重申了這一點,因爲它實際上只是一個jQuery UI問題(它不同於jQuery,並不是所有的Java) –

回答

1

你真的想把兩個主題合併爲一個(或部分結合兩個主題)。你不能只使用整合器,但你可以提取自定義主題的相關部分,並將#top添加到選擇器中。那麼,生成的題材可能

.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { 
    ... 

你必須修改它是

#top .ui-state-default a, #top .ui-state-default a:link, #top .ui-state-default a:visited { 
    ... 

潛在的大量的工作,而不是非常有效的,但jQuery UI的主題都設置方式,它們適用相同的造型全部元素

相關問題