Establecer el ancho de JSF encabezado de columna fija el tamaño de la tabla
-
13-12-2019 - |
Pregunta
Tengo una JSF datatable con tabla-layout:fijo, donde estoy tratando de establecer basada en el porcentaje de ancho de cada columna.Me imaginé que si puedo agregar un atributo width de la cabecera en IE, entonces funciona como se esperaba.Sin embargo, no puedo averiguar cómo agregar este atributo width en el código.He añadido un atributo dentro de la faceta de la cabecera, pero que no funcionó.No el ambiente de trabajo dentro de la columna de la etiqueta de cualquiera de los dos.
Si alguien pudiera ayudarme lo agradecería.
<h:column>
<f:facet name="header">
<h:outputText
value="#{messageSource['tasks.headline.task']}" />
<f:attribute name="width" value="20%"/>
</f:facet>
<t:commandLink id="lookAtTask" action="lookAtTask">
<t:updateActionListener property="#{flowScope.localTask}"
value="#{data.task}" />
<h:graphicImage url="/images/icon_properties_16x16.gif"
alt="#{messageSource['tasks.headline.task']}" />
</t:commandLink>
</h:column>
Solución
Usted puede utilizar el headerClass
atributo de la <h:column>
para especificar una clase de estilo de la cabecera.
<h:dataTable ...>
<h:column headerClass="col1">
<f:facet name="header">...</f:facet>
...
</h:column>
<h:column headerClass="col2">
<f:facet name="header">...</f:facet>
...
</h:column>
<h:column headerClass="col3">
<f:facet name="header">...</f:facet>
...
</h:column>
</h:dataTable>
con, por ejemplo,este CSS
.col1 { width: 20%; }
.col2 { width: 30%; }
.col3 { width: 50%; }
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow