javascript - 如何使用 JavaScript 修改 CSS 类?

标签 javascript jquery html css

我知道如何在单个标签上应用 css(或更改标签上的类),但这不是我要问的!

我想修改 CSS 类中的属性而不触及应用该类的元素。

换句话说,如果这是 css

.myclass {
  font-size: 14px;
  color: #aab5f0;
}

这是html

<span id="test" class="myclass"> foo bar </span>

增加 span 标签的字体我想修改类的内容而不是做类似的事情

var fontsize = parseInt($('#test').css('font-size').replace(/[^-\d\.]/g, ''));
fontsize += 10;
$('#test').css('font-size', fontsize+'px');

我希望类(class)变成

.myclass {
      font-size: 18px;
      color: #aab5f0;
    } 

有没有办法通过 Javascript 更改实际类?

我的另一个解决方案是将 css 放入容器中并每次重新填充容器,但我感觉这不是一个好主意......

最佳答案

我认为理想情况下,您应该在 htmlbody 元素上定义基本字体大小。 CSS 中的所有其他字体大小都应该相对于该“主”字体大小,如下所示:

然后,当您通过 jQuery.css() 调整 body 的字体大小时,其他元素将自动调整其相对于父元素的大小。

$(body).css('font-size', '14px');

您不必使用 body 级别,您可以将 base font-size 定义为 div 或其他容器,并将其用作父容器。

这是一个人为的例子:

$('#grow').click(function() {
  $('body').css('font-size', '18px');
});
body {
  font-size: 12px;
}

h3,
p {
  font-size: 1.0em;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<h3>Main Title</h3>
<p> Welcome to my website. </p>

<button id="grow" type="button">Grow</button>

关于javascript - 如何使用 JavaScript 修改 CSS 类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7667082/

相关文章:

html - 如何在 HTML 中制作带有滚动内容的响应式 div?

javascript - 如何在从 typescript 生成的javascript中维护空格

javascript - jQuery 自动刷新 div 出现故障

javascript - 将 x-webkit-speech 与文本区域一起使用

javascript - 将样式添加到 textarea 的特定行

javascript - Bootstrap 导航栏下拉列表隐藏在 html 选择选项后面

html - 如何并排对齐这些元素?

javascript - 编写一个易于使用的 Typescript 框架

javascript - JQuery 日期选择器无法正常工作

php - 如何选择多个文件上传?