2013-07-16 27 views
0

我有用CSS设计的html页面。有对DIV选择和SPAN元素是这样的:JSF + CSS:自定义面板组ID由UINamingContainer覆盖

 
... 

#gr-bg1 { 
    .... 
    background-color: red; 
    .... 
} 

... 

与panelGroups创造适当的它XHTML页面:

<h:panelGroup id="gr-bg1" styleClass="item1" layout="block"> 
     <h:panelGroup styleClass="item-value"> 
      <h:outputText value="#{i18n.rejections}"/> 
     </h:panelGroup> 
     <h:panelGroup styleClass="num" layout="block"> 
      <h:outputText value="#{info.rejections}"/> 
     </h:panelGroup> 
</h:panelGroup> 

和结果具有HTML:

<div id="A4405:gr-bg1" class="item1"> 
    <span class="item-value">text</span> 
    <div class="num">34534535</div> 
</div> 

什么如果css选择器正在寻找#gr-bg1 id?

回答

0

几个月前,我有与JSFCSS相同的问题。我想我解决了它通过Firebug读出了html生成的tag的Id,并替换了CSS-sheetId

你的情况:

#A4405:gr-bg1 { 
.... 
background-color: red; 
.... } 

不知道这是否是最好的做法,但它是一种解决方法的。

否则,你可能会阻止JSF生成自己的ID,如元素的“A4405”,由上面给出你自己的ID的元素,并使用此而不是被放置在您的div的上一级。

+0

我试图用其自己的'ID'封装其他'panelGroup'这个元素,但是这个新的父元素在'ID'上加了相同的前缀“A4405”。 –

+0

也许每个家长都必须拥有一个自己的'id'。否则,jsf-frameworks给你一个'id'。你有没有尝试给每个父母一个用户定义的'id'? – Loda

+0

是的,我试过了。但是这个父类只有'h:view'元素作为其父元素。我无法为此设置“ID”。 –