身体bgcolor属性权重

时间:2014-10-10 10:06:15

标签: javascript jquery html css

我用css写过,身体会有蓝色,但在javascript我已经让身体每秒都会改变颜色,直到我添加了全局css。我无法删除css,因为它有许多我无法取消链接的规则。我想要一种所有css规则都会加载的方式,但我的身体颜色不会受到影响。

屏幕截图来证明body bgcolor已经被脚本更改但未显示:

http://i.gyazo.com/b6a7a0f4c5153c61b38c3552cdcd65fc.gif

有人可以证明我怎么能包含那个外部全局CSS但是我的脚本也可以改变bgcolor而css不会阻止它。

P.S:我是Noob :)!

编辑:

我的代码:http://fiddle.jshell.net/dfywom6a/

帮助!

4 个答案:

答案 0 :(得分:3)

尝试使用document.body.style.background = color;代替document.bgColor = color; 这将覆盖应用于body元素的全局css。

我希望这有助于http://jsfiddle.net/ceueqetn/

答案 1 :(得分:1)

不推荐使用bgColor属性。因此,CSS规则可能会覆盖bgColor属性中所述的颜色。

因此,不要在JavaScript中更改bgColor,而应考虑更改CSS:

var body = document.getElementsByTagName('body')[0];
body.style.setProperty('background-color', 'red');

Here is the updated version of your code.

答案 2 :(得分:0)

尝试在您的颜色css上添加!important

body {
  background: #f00 !important;
}

答案 3 :(得分:0)

您需要将代码而不是document.bgColor更改为此document.body.style.background

此处的工作示例http://fiddle.jshell.net/dfywom6a/42/

function cc() {
    window.setInterval("Farbe()", 500);
}
farbe = 1;

function Farbe() {
    if (farbe == 1) {
        document.body.style.background = "indigo";
        farbe = 2;
    } else if (farbe == 2) {
        document.body.style.background = "red";
        farbe = 3;
    } else if (farbe == 3) {
        document.body.style.background = "orange";
        farbe = 4;
    } else if (farbe == 4) {
        document.body.style.background = "blue";
        farbe = 1;
    }
}