2

我需要修复一个为 TD 设置了默认样式的网站:

#cmsContent table td {
    background-color: #d7d7d9;
}

但是,使用 CMS 编辑器的客户端想要粘贴他们在 Dreamweaver 中创建的一些 HTML,以将一些 tds 的背景设置为一堆不同的颜色,例如:

<td bgcolor="#669900">

(这是一个巨大的丑陋的dreamweaver生成的html的一小块,他们放在CMS中,很多tds有很多颜色)

但是样式表中设置的样式使所有背景变为灰色。

我想知道是否有一种方法可以“撤消”#cmsContent table td 中设置的默认样式,并让 td 的 bgColor 显示出来。我希望我可以将该表包装在一个带有类的 div 中,该类将撤消 #d7d7d9 背景颜色并让 bgcolor 显示出来。

<div class='overrideTDColor'><table>...<td bgcolor="#669900"> .... etc

然后在我的样式表中

#cmsContent .overrideTDColor table td {
background-color: ?????
}

有可能做这样的事情吗?请记住,clients 表中的每个 TD 都是不同的颜色,所以我不能只将覆盖设置为某种特定颜色。

除了重写dreamweaver html 让他们在tds 上使用style="" 而不是bgcolor="" 之外的任何想法?

4

1 回答 1

2

不,如果有一种background-color样式应用于 atd那么它将始终优先于bgcolor属性,并且您将无法使用 CSS 撤消该样式以使浏览器使用 HTML 属性。您需要将 HTML 中的相同值硬编码到每个td元素的新 CSS 规则中,或者使用 JavaScript 读取样式表并删除background-color规则。

于 2013-03-12T17:06:44.997 回答