2012-05-29 223 views
7

Me gustaría saber cómo aplicar los estilos para la columna de encabezado en la tabla de datos Primefaces. Pude cambiar los estilos para las filas usando el atributo rowStyleClass. Pero no estoy seguro, cómo cambiar el estilo de las columnas del encabezado. Un ejemplo de muestra sería realmente útil. He intentado el siguiente, pero el estilo de toda la columna parece cambiarseAplicación de estilos al encabezado en p: datatable

<p:column id="SelectallID" headerText="Select ID" style="text-align:center; background-color:#C6C3C6;padding:12px;"> 
<h:outputText> 
<h:selectBooleanCheckbox id="checkbox2" value="#{car.selected}"/> 
</h:outputText> 
</p:column> 

cuando utilizo lo anterior, todo el estilo de la columna parece cambiarse. Pero quiero cambiar el estilo solo para las columnas del encabezado. Por favor asiste. Gracias por adelantado.

+0

"header columns"? ¿No te refieres a "encabezados de columna"? – BalusC

+0

Hola BalusC gracias por la respuesta. Sí, quise decir la columna Encabezados – vr3w3c9

Respuesta

8

Primeras cabeceras datatable generan un elemento html <th>. Se podría utilizar un selector de elementos en su definición de estilo:

th { 
    color: red !important; 
} 

Esta voluntad, por ejemplo, cambiar el color de la fuente de todas las <th> elementos de la página.

Si esta selección no es lo suficientemente específica para sus propósitos, se puede combinar con el id de la tabla de datos:

#review-table th { 
    color: red; 
} 
+0

Gracias por la respuesta. Según lo especificado, he incluido el estilo a continuación en mi código. Pero los estilos no se están aplicando al encabezado. donde review-table es la id del p: datatable. .review-table th { \t \t \t text-align: center; \t \t \t color de fondo: # 85C2FF; \t \t \t borde inferior: 1px sólido; \t \t \t relleno: 12px; \t \t \t} Su ayuda en esto es muy apreciada. Gracias – vr3w3c9

+0

El selector de id comienza con '#' y no con un punto. Actualizado mi respuesta. –

+0

Hola Matt, gracias por la respuesta. Cambié el selector de id con # pero aún así los estilos no se aplicaron al encabezado :(. No estoy seguro de si estoy haciendo algo mal – vr3w3c9

0

Sé que esto es viejo, pero por si acaso alguien lo encuentra:

puede crear AP: dataTable con una p: columnGroup así:

<p:dataTable id="example" value="#{bean.values}" var="value"> 
    <p:columnGroup type="header"> 
     <p:column headerText="column1" /> 
     <p:column headerText="column2" styleClass="text-left"/> 
     <p:column headerText="column3" styleClass="text-left"/> 
    </p:columnGroup> 
    <p:column>#{value.val1}</p:column> 
    <p:column>#{value.val2}</p:column> 
    <p:column>#{value.val3}</p:column> 
</p:dataTable> 

el estilo en el columnGroup afectará a las cabeceras <th> y el estilo en el resto de las columnas afectará a <td>

Espero que esto ayude.

Cuestiones relacionadas