14

我想用不同的颜色显示数据表行。

我正在使用 rowStyleClass 属性。但它并没有改变颜色

我在数据表中的代码是,

rowStyleClass="highlight";

我的css文件看起来像这样,

.highlight {
    background: yellow  !important ;
}
4

4 回答 4

24

你应该有两个不同颜色的类,并在 rowStyleClass 属性中使用 inline 如果:

rowStyleClass="#{(rowIndex mod 2) eq 0 ? 'highlight1' : 'highlight2'}" 

您应该在数据表 rowIndexVar 属性中设置“rowIndex”

rowIndexVar="rowIndex"

这意味着偶数行的行样式类设置为“highlight1”,奇数行 - “highlight2”

在这里查看更多信息

于 2013-03-13T15:41:24.480 回答
18

最简单的方法是在你的 CSS 中实现.ui-datatable-odd.ui-datatable-even样式化类,这是p:dataTable默认实现的。例子:

.ui-datatable-odd {
    background: #ffffff;
}

.ui-datatable-even {
    background: #F2F5F9;
}

最终看起来像

在此处输入图像描述

可能是您需要使用更具体的选择器,请阅读有关 css 的特殊性

于 2015-02-13T19:24:25.620 回答
1

试试这个......它在我的情况下工作

.ui-widget-content .ui-datatable-even{
    background: #F2F5F9;
}

.ui-widget-content .ui-datatable-odd{
    background: red;
}
于 2017-09-11T05:33:52.917 回答
0

都铎的答案是正确的方式。如果您使用 treeTable ,您可以这样做:

.ui-treetable tbody tr:nth-child(odd) {
    background-color: #edf2f6 !important;
}

.ui-treetable tbody tr:nth-child(even) {
    background-color: #ffffff !important;
}
于 2019-04-11T18:44:40.207 回答