2

我有一个表,我使用这一行突出显示替代行:

$("table.altRow tr:odd").css("background-color", "#DEDFDE");

除了现在,它的效果很好,在其中一列中我有一个单独的嵌套表,所以我在父表中看到替代行周围的问题。

所以假设我在外部表中有 3 行:

第 1
行 第 2
行 第 3 行

如果没有嵌套表,我会得到:

第 1 行:深色
第 2 行:浅色
第 3 行:深色

但是如果我在第 1 行有一个包含两行的嵌套表,我会得到

第 1 行:深色(嵌套表第 1 行:深色,嵌套表第 2 行:浅色)
第 2 行:深色
第 3 行:浅色

无论如何,嵌套表不会影响父表的备用行吗?

4

3 回答 3

2

使用子选择器>(确保添加tbody):

$("table.altRow > tbody > tr:odd").css("background-color", "#DEDFDE");

小提琴

于 2013-10-09T02:29:13.030 回答
0

如果您碰巧使用tablesorterjQuery 小部件,您可以将zebra设置为默认小部件选项,再也不用担心这个问题。

于 2013-10-09T03:13:05.740 回答
0

您应该使用 nth-child 例如:

table.altRow tr:nth-child(even) {背景:#CCC}

table.altRow tr:nth-child(odd) {背景:#FFF}

你也可以做 nth-child(#) {style}

希望这可以帮助

于 2013-10-09T04:48:09.740 回答