Legen Sie die Breite für die JSF-Spaltenüberschrift in einer Tabelle mit fester Größe fest

StackOverflow https://stackoverflow.com//questions/12705836

Frage

Ich habe eine JSF-Datentabelle mit table-layout:fixed, in der ich versuche, die prozentuale Breite für jede Spalte festzulegen.Ich habe mir gedacht, dass es wie erwartet funktioniert, wenn ich dem Header im IE ein Breitenattribut hinzufüge.Ich kann jedoch nicht herausfinden, wie ich dieses Breitenattribut in den Code einfügen kann.Ich habe im Facettenheader ein Attribut hinzugefügt, aber das hat nicht funktioniert.Es hat auch nicht funktioniert, es innerhalb des Spalten-Tags zu setzen.

Wenn mir jemand helfen könnte, wäre ich dankbar.

<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>
War es hilfreich?

Lösung

Du kannst den ... benutzen headerClass Attribut der <h:column> um eine Stilklasse des Headers anzugeben.

<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>

mit z.B.dieses CSS

.col1 { width: 20%; }
.col2 { width: 30%; }
.col3 { width: 50%; }
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top