我需要修复一个为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 =“”?
答案 0 :(得分:2)
不,如果background-color
样式适用于td
,那么它将始终优先于bgcolor
属性,并且您将无法使用CSS撤消该td
属性样式使浏览器使用HTML属性。您需要将HTML中的相同值硬编码为每个background-color
元素的新CSS规则,或者使用JavaScript来读取样式表并删除{{1}}规则。