20

我需要将一些 css 样式应用于具有“colspan”属性且其值大于 1 的 td 元素。

我执行以下操作:

td[colspan][colspan!=1] {
 background: red;
}

它适用于所有浏览器而不是 IE(包括最新版本)。请帮忙。我该如何解决。

4

1 回答 1

37

这不应该在任何浏览器中工作,因为[colspan!=1]它不是有效的 CSS 属性选择器。它仅作为非标准扩展存在于 jQuery 中。

jQuery 文档

此选择器等效于:not([attr="value"]).

这意味着它要在 CSS 中工作,你需要使用它:

td[colspan]:not([colspan="1"]) {
 background: red;
}

请记住,:not()早于版本 9 的 IE 不支持这一点。如果您需要支持旧版浏览器,您可以使用 jQuery 来应用样式,或者如果您必须使用 CSS,那么您应该覆盖td元素的样式[colspan="1"]

td {
 background: red;
}

td[colspan="1"] {
 background: transparent;
}
于 2012-08-02T18:56:38.767 回答