如何在不输入新值的情况下覆盖CSS样式?

时间:2010-06-17 21:06:48

标签: css

我想覆盖另一台服务器上样式表中的样式。但是,我不想输入新值,我只想以某种方式取消该风格。那可能吗?竞争风格覆盖了我的其他一些风格,我只想基本过滤远程风格。

4 个答案:

答案 0 :(得分:2)

你做不到。

Stylesheets级联,没有回头路。即使是默认值,也只是内部浏览器样式表中分配给它的值。

如果要覆盖某些内容,则必须明确地执行此操作。

答案 1 :(得分:1)

您可以尝试将其设置为自动或继承,它可能会按您的需要运行。 你试图改变什么属性?

答案 2 :(得分:1)

我会说你可以做几件事:
首先,您可以尽可能地定义您的选择器,这意味着如果您在表格内(或在任何其他元素内)设置元素样式,请确保您的选择器包含父元素,例如:

div#container div#navBar ul.navLinks li.link
{
    color:#000;
}

这将优先于:

li.link

或者您只需在该值中添加“!important”即可明确覆盖其他任何内容,例如:

color:#000!important;

希望有所帮助

答案 3 :(得分:0)

你可以在javascript中完成:

// in the following, replace 1 with the index of the
// stylesheet you want to disable
var ss = document.styleSheets[1];
var rls = ss.cssRules ? ss.cssRules : ss.rules;
for(var i = 0; i < rls.length; i++){
    ss.deleteRule(i);
}

但首先阅读cross browser css hell