我想右对齐 outputText 值(即下面的 fee.TableAmount),并且我想保持该列的标题居中。我必须传递给下面的 outputText 什么参数才能实现这一点?
<h:dataTable>
...
(other columns)
...
<h:column headerClass="columnCenter">
<f:facet id="header_agency" name="header">
<h:outputText value="Amount"/>
</f:facet>
<h:outputText value="#{fee.tableAmount}">
<f:convertNumber maxFractionDigits="2" groupingUsed="true"
currencySymbol="$" type="currency" />
</h:outputText>
</h:column>
</h:dataTable>
最佳答案
您可以使用 columnClasses
的 <h:dataTable>
属性在同一列的所有单元格上指定 CSS 类。您可以传递以逗号分隔的类名字符串。
<h:dataTable columnClasses="column1,column2,column3">
以上为第一列呈现
<td class="column1">
,为第二列呈现 <td class="column2">
,依此类推。这允许您外部化和规范化样式。假设你有 4 列,第一、二、四列不需要特殊样式,只有第三列需要右对齐,然后这样做
<h:dataTable columnClasses="none,none,right,none">
结合
td.right {
text-align: right;
}
这在语义上比
float: right;
更正确,技术上更健壮。关于css - 右对齐数据表列中的单元格内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5112151/