Definir largura para cabeçalho de coluna JSF em tabela de tamanho fixo
-
13-12-2019 - |
Pergunta
Eu tenho uma tabela de dados JSF com table-layout:fixed, onde estou tentando definir a largura com base em porcentagem para cada coluna.Achei que se eu adicionar um atributo de largura ao cabeçalho no IE, ele funcionará conforme o esperado.No entanto, não consigo descobrir como adicionar esse atributo de largura no código.Adicionei um atributo dentro do cabeçalho da faceta, mas não funcionou.Também não funcionou configurá-lo dentro da tag da coluna.
Se alguém pudesse me ajudar, seria apreciado.
<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>
Solução
Você pode usar o headerClass
atributo do <h:column>
para especificar uma classe de estilo do cabeçalho.
<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>
com, por exemplo.este CSS
.col1 { width: 20%; }
.col2 { width: 30%; }
.col3 { width: 50%; }
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow