9

我正在使用 JavaScript 动态创建 HTML 表,以便列数可以变化(1 到 10 之间)。CSS中有没有一种方法可以自动将类样式应用于该表的除第一列之外的所有列,而无需手动向每一列添加类?

我认为使用第 n 个孩子可能有一个技巧,但无法使其正常工作。

4

2 回答 2

16

有几种方法。其中之一是

th:nth-child(n+2), td:nth-child(n+2) { ... }

一个不同的:

th + th, th + td, td + th, td + td { ... }

这些的浏览器覆盖率很好,但不是 100%。要涵盖所有支持 CSS 的浏览器,恐怕您需要间接执行此操作:

th, td { /* your settings here */ }
th:first-child, td:first-child { /* “overwriting” settings here */ }

这里“覆盖设置”是指覆盖第一条规则中的设置的设置。但这需要有关第一列所需渲染的信息。

于 2013-10-29T08:44:24.620 回答
13

尝试这个:

td:not(:first-child){color:green;}

这是小提琴。

于 2013-10-29T08:44:48.650 回答