rich:datatable中的列宽度

时间:2011-05-06 05:17:06

标签: css jsf

我在我正在使用的一个网页中使用JSF 1.2。我想设置列的宽度。

<rich:dataTable id="dt" border="1" cellpadding="2" cellspacing="0" width="100%">
   <rich:column filterBy="" filterEvent="onkeyup" sortBy=""> 
    <f:facet name="header1">
       <h:outputText value="header1" />
    </f:facet>
    <h:outputText value="myValue1"></h:outputText>
   </rich:column>
   <rich:column filterBy="" filterEvent="onkeyup" sortBy=""> 
    <f:facet name="header2">
       <h:outputText value="header2" />
    </f:facet>
    <h:outputText value="myValue2"></h:outputText>
   </rich:column>
</rich:dataTable>

在rich:column中我需要为列设置宽度,为此我尝试了

1)width="100px"

2)headerClass="myWidth"并在css文件中声明myWidth,         .myWidth {width:100px;}(如     column width in rich:datatable)     但两者都不起作用。

任何人都可以帮我设置列宽。

2 个答案:

答案 0 :(得分:2)

使用rich:dataTable的columnClasses属性,并为每列提供一个类或相同的类。

<rich:dataTable columnClasses="col1Class,col2Class" ...

答案 1 :(得分:0)

如果您想设置所选列的宽度,那么 rich:dataTable 提供的另一个选项是您可以执行以下操作:

<rich:dataTable id="dt" border="1" cellpadding="2" cellspacing="0" width="100%">
  <rich:column filterBy="" filterEvent="onkeyup" sortBy="" styleClass="column1"> 
    <f:facet name="header1">
      <h:outputText value="header1" />
     </f:facet>
    <h:outputText value="myValue1"></h:outputText>
  </rich:column>
  <rich:column filterBy="" filterEvent="onkeyup" sortBy="" styleClass="column2"> 
     <f:facet name="header2">
       <h:outputText value="header2" />
     </f:facet>
     <h:outputText value="myValue2"></h:outputText>
 </rich:column>
</rich:dataTable>

现在您可以轻松定义宽度,但不能使用CSS类选择器定义任何CSS属性 例如;

.column1{
    width:30%;
}