我可以用bgcolor覆盖td的样式表css吗?

时间:2013-03-12 17:03:00

标签: html css inline-styles

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

#cmsContent table td {
    background-color: #d7d7d9;
}
然而,客户端使用CMS编辑器想要粘贴他们在Dreamweaver中创建的一些HTML,将某些tds的背景设置为一堆不同的颜色,例如:

<td bgcolor="#669900">

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

然而,样式表中设置的样式会使所有背景变灰。

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

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

然后在我的样式表中

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

有可能做那样的事吗?请记住,客户端表中的每个TD都是不同的颜色,因此我不能将覆盖设置为某种特定颜色。

任何想法,除了重写dreamweaver html,让他们在tds上使用style =“”而不是bgcolor =“”?

1 个答案:

答案 0 :(得分:2)

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