4

例如,如果我有

<style type='text/css' id='divcolorgreen'>
    div{
        color: green;
    }
</style>

我可以使用 3 种方式禁用 css 规则

  • 删除样式元素(重新附加以重新启用)
  • 修改它的内部html
  • 将内联规则一一添加到每个元素(最好使用jquery)

有没有更简单的方法来禁用/删除 css 规则?

4

3 回答 3

7

这就是上课的目的。通过分配一个类,例如。到<body>标签,您将获得相同的功能:

<style type='text/css' id='divcolorgreen'>
    body.divcolorgreen div{
        color: green;
    }
</style>

然后如果<body>看起来像这样:

<body class="divcolorgreen">
    ...
</body>

规则被应用。要禁用规则,请删除提到的类:

<body>
    ...
</body>
于 2012-09-13T03:08:19.387 回答
1

好的,所以您正在尝试更改页面上所有 div 的颜色。

jQuery.css()允许您设置与选择器匹配的所有元素的样式。在你的情况下,它只是div.

设置:

$('div').css('color', 'yellow');

去除:

$('div').css('color', '');

如果不想使用jQuery,思路是一样的:

document.getElementsByTagName('div')为您提供页面上的所有 div。您可以遍历它们并通过以下方式更改它们的样式elem.style.color="yellow";

于 2012-09-13T02:53:32.317 回答
1

1 你可以通过 jquery css( propertyName , value )api 来做到这一点,但根据我的说法是更简单的方法,因为如果有很多风格,比如你已经设置了字体、颜色、高度,......第二种方法更容易,更节省时间

 $("div").css("color", "yellow")

2 你可以这样removeClass('someClass');addClass('someClass');

例如,使用 jQuery 选择器来定位具有“some”类的除法元素

html

<div class="some" ></div>

css

.some{ color: green; }

jQuery

如果你想添加另一个类可以使用 addClass

$(".some").click( function(){
   $(this).addClass('someClass');
});

如果您想删除该类,请使用 jQuery 的 removeClass 方法:

$(".some").click( function(){
   $(this).removeClass('someClass');
});
于 2012-09-13T02:53:48.640 回答