rich:dataTable headerClass属性问题

时间:2013-12-17 17:27:40

标签: css jsf-2 richfaces

我们正在从jsf 1.2升级到jsf 2。 我们正在使用apache myfaces 2.1和富面4.3。

问题是headerClass属性似乎不适用于rich:dataTable。以下是xhtml代码

.class2{
 border: 1px solid #000;

}

.class1{
      text-align:left;
      color:#000;
      font-weight:normal;
}




<rich:dataTable value="#{bean.quns}" var="quns" headerClass="class1" columnClasses="class2">

                            <f:facet name="header">
                                    <h:outputText value="User Name : #{bean.userName}"/>    
                                </f:facet>

                             <rich:column>                      
                                    <h:panelGrid id="qns#{index+1}" columns="2">

                                                <h:outputText value="qns #{index+1}"/>
                                                <h:selectOneMenu value="#{quns.question}">
                                                <f:selectItems value="#{bean.questionPool}" />
                                         </h:selectOneMenu> 

                                                 <h:outputText value="Answer"/>
                                     <h:inputText value="#{quns.answer}"/>



                                            </h:panelGrid>    
                              </rich:column>
        </rich:dataTable>

columnclasses属性工作正常。 当富到:用于表头单元格的css样式内置的dataTable被修改如下:

.rf-dt-hdr-c{
      text-align:left;
      color:#000;
      font-weight:normal;
}

标题类完美正常,表明默认样式表正在覆盖显式样式表。 headerClass styleClass如何工作?

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

当您研究渲染的XHTML代码时,您将识别

  • headerClass内容已添加到标题行的tr
  • columnClassES内容按空格标记,已添加到相应的列td

要将class1 CSS的命令放在与rf-dt-hdr-c相同的图层上,只需将CSS定义更改为

.class1 th {
  text-align:left;
  color:#000;
  font-weight:normal;
}

希望它有所帮助...