Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用JavaScript更改CSS类名_Javascript_Jquery_Html_Css - Fatal编程技术网

使用JavaScript更改CSS类名

使用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。其次

是否可以更改css类的类名。例如,如果我有classA和classB,我想将classA的类名更改为classB。其目的是继承classA和classB的所有特性

.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>