【问题标题】:jquery: how to change properties of whole css-class? [duplicate]jquery:如何更改整个 CSS 类的属性? [复制]
【发布时间】:2012-08-11 22:46:59
【问题描述】:

可能重复:
Changing a CSS rule-set from Javascript

我知道 CSS 中没有变量,但如果可以使用 JQ 更改页面上的 CSS 列表正文 - 它可能会解决这个问题。另外,我知道 addClass/removeClass 和 css('blabla','blabla') JQ 方法,这不是我需要的。

【问题讨论】:

  • 那不是类,CSS 没有类(它有类选择器,但这不是你在说的)。您想要更改规则集(可能带有类选择器)。
  • 您可以使用它来将新样式表附加到 dom,其中可能包含覆盖现有 css 的样式。虽然我无法想象你需要这样做的充分理由?
  • @Quentin 感谢指正,是的,我说的是规则集。
  • @Jeemusu 看:var color='black'; change_many_things = function(){ var style = document.createElement('style'); style.**content**+="body:{background:"+color+"}"; style.**content**+="other_element:{other_color_of_something:"+color+"}" document.getElementsByTagName('head')[0].appendChild(style); }

标签: javascript jquery css


【解决方案1】:

您可以使用 body 类,然后使用 CSS 仅操作 body 类,然后根据您的 body 类设置所有样式。

<body class="my-skin">
   <p>Lorem<p>
</body>

在你的 CSS 中:

.my-skin p{color: red}
.my-skin img{border:2px solid #333;margin:5px}

.second-skin p{color:blue}

jQuery:

$('body').addClass('my-skin');
//or
$('body').removeClass('my-skin').addClass('second-skin');

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-01-16
    • 2013-06-23
    • 2012-07-13
    • 1970-01-01
    • 1970-01-01
    • 2013-05-08
    • 2014-08-27
    • 2023-03-03
    相关资源
    最近更新 更多