Html 如何覆盖整个表的第n个子表tr

Html 如何覆盖整个表的第n个子表tr,html,css,Html,Css,我有以下CSS。它让我有一个默认设置,即表格行交替背景色,并让我告诉各个行不要交替 有没有办法在每个表的基础上而不是在每行的基础上这样做?我只想在表级别定义一些东西,而不是为每一行定义它 换句话说,属性“this table's rows not alternate”在概念上属于表,而不是单独的行。因此,如果可能的话,我希望将该属性分配给表,而不是它的每一行 可能吗 table tr:nth-child(odd) { background-color: #f1f1f1; } table

我有以下CSS。它让我有一个默认设置,即表格行交替背景色,并让我告诉各个行不要交替

有没有办法在每个表的基础上而不是在每行的基础上这样做?我只想在表级别定义一些东西,而不是为每一行定义它

换句话说,属性“this table's rows not alternate”在概念上属于表,而不是单独的行。因此,如果可能的话,我希望将该属性分配给表,而不是它的每一行

可能吗

table tr:nth-child(odd) {
    background-color: #f1f1f1;
}

table tr:nth-child(even) {
    background-color: #ffffff;
}

table tr.noLine {
    background-color: #f1f1f1;
}
谢谢,

您可以这样做:

table:not(.nobg) tr:nth-child(odd) {
    background-color: #f1f1f1;
}

table:not(.nobg) tr:nth-child(even) {
    background-color: #ffffff;
}

table:not(.nobg) tr.noLine {
    background-color: #f1f1f1;
}

您需要将类
nobg
添加到您不希望替换颜色的表中。CSS读取没有class
nobg
的表,应用以下规则。检查支持信息。

在某一点上,您必须告诉行使用不同的颜色。除非您的意思是只想替换表的背景色,否则您的意思是替换表的背景色?我希望某个特定表的行不替换其颜色,并且由于这是表的属性,我希望在表级别指定它,不是行级别。@GregDougherty如果您需要,那么您可以向该特定表添加一个类,并通过重写它们来撤消您的备用行css,或者您可以使用css not运算符并应用于最有效的当前css规则。非常感谢。问题是我在一张桌子里面有一张桌子,而我想“nobg”的是第二张(内部)桌子。Firefox和Chrome都坚持在表的偶数行上设置“table:not(.nobg)tr:nth child(even)”格式。nobg是一个表。@GregDougherty好的,这是一个稍微不同的问题。如果您在内部表格上看到背景色,则它来自外部表格行。1) 为nobg类设置与正常背景颜色匹配的背景颜色,即:向具有内部表格的行添加一个类,并使用css禁用背景颜色