使用JavaScript更改CSS类名
是否可以更改css类的类名。例如,如果我有classA和classB,我想将classA的类名更改为classB。其目的是继承classA和classB的所有特性使用JavaScript更改CSS类名,javascript,jquery,html,css,Javascript,Jquery,Html,Css,是否可以更改css类的类名。例如,如果我有classA和classB,我想将classA的类名更改为classB。其目的是继承classA和classB的所有特性 .classA{ 位置:绝对位置; 宽度:25px; 高度:25px; 边界半径:10px; 背景#f57df5; } .B类{ -webkit变换:旋转(30度)translatex(120像素); 背景色:黑色; } 是的,您可以,但是您的小提琴代码和推理中有一些错误 首先,如果使用jQuery特性,则需要加载jQuery。其次
.classA{
位置:绝对位置;
宽度:25px;
高度:25px;
边界半径:10px;
背景#f57df5;
}
.B类{
-webkit变换:旋转(30度)translatex(120像素);
背景色:黑色;
}
是的,您可以,但是您的小提琴代码和推理中有一些错误
首先,如果使用jQuery特性,则需要加载jQuery。其次,由于输入错误,没有找到该元素
但接下来是逻辑classB
向classA
的属性添加转换,但是如果将类更改为classB
,元素不再具有classA
的属性,因此无需转换
长话短说,您不应该替换类,而应该添加类。一个元素可以有多个类,因此当您同时为它指定classA
和classB
时,它将正确显示变换后的形状:
$(document).ready(function(){
var x = document.getElementsByClassName('classA');
// jQuery style
$(x[0]).addClass('classB');
// Old Javascript style
x[0].className += ' classB';
// Modern Javascript style, not supported in IE9-
x[0].classList.add('classB');
});
更新小提琴:
您只需使用两个类的名称即可:
<div class="classA classB"></div>
或者在CSS中,从一个类继承到另一个类:
.classA,
.classB
{
position:absolute;
width:25px;
height: 25px;
border-radius: 10px;
background: #f57df5;
}
.classB
{
-webkit-transform : rotate(30deg) translatex(120px);
background-color:black;
}
<div class="classB"></div>
.classA,
.B类
{
位置:绝对位置;
宽度:25px;
高度:25px;
边界半径:10px;
背景#f57df5;
}
.B类
{
-webkit变换:旋转(30度)translatex(120像素);
背景色:黑色;
}
可能的重复是您希望实现的?因为您使用jquery do$('.classA')。addClass('classB')
.classA,
.classB
{
position:absolute;
width:25px;
height: 25px;
border-radius: 10px;
background: #f57df5;
}
.classB
{
-webkit-transform : rotate(30deg) translatex(120px);
background-color:black;
}
<div class="classB"></div>