3

how to remove CSS default class

This is my div

<div id="messageContainer">

This is my css class

#messageContainer{  
  height:26px;  
  color:#FFFFFF;    
  BACKGROUND-COLOR: #6af; 
  VERTICAL-ALIGN: middle;
  TEXT-ALIGN: center;
  PADDING-TOP:6px;  
}

I want to remove default class and new css class

Please help;

Doug Neiner
  • 65,509
  • 13
  • 109
  • 118
Vicky
  • 9,515
  • 16
  • 71
  • 88

5 Answers5

4

You aren't dealing with a class. You have default rules applied to the ID element. As such, you should really only need to add the new class:

$("#messageContainer").addClass("newRules");

Any rules that aren't overwritten can be overwritten with the css() method:

$("#messageContainer").css({
  'font-weight':'bold',
  'color':'#990000'
}).addClass("newRules");
Sampson
  • 265,109
  • 74
  • 539
  • 565
3

You can approach it two ways. One, use two classes and literally swap them out for each other:

.red { background: red }
.green { background: green }

And then in jQuery:

$("#messageContainer").attr('class','green'); // switch to green
$("#messageContainer").attr('class','red'); // switch to red

Or you can use CSS order to toggle a single class:

#messageContainer { background: red }
#messageContainer.green { background: green }

Then:

$("#messageContainer").toggleClass("green");

That would alternate backgrounds every time it was called.

Doug Neiner
  • 65,509
  • 13
  • 109
  • 118
2

You are not defining a css class in your example, you are using the selector for the id.

to use a class your code would be like:

<div id="messageContainer" class="messageContainer"></div>

and in your stylesheet or between style tags you would have

.messageContainer{  
  height:26px;  
  color:#FFFFFF;    
  BACKGROUND-COLOR: #6af; 
  VERTICAL-ALIGN: middle;
  TEXT-ALIGN: center;
  PADDING-TOP:6px;  
}

then, using jquery you could remove this class by doing

$('#messageContainer').removeClass('messageContainer');
John Boker
  • 82,559
  • 17
  • 97
  • 130
1

For IE10 and up use these methods:

// adds class "foo" to el
el.classList.add("foo");

// removes class "foo" from el
el.classList.remove("foo");

// toggles the class "foo"
el.classList.toggle("foo");
JoeTidee
  • 24,754
  • 25
  • 104
  • 149
0

Try to add a period before your css class definition.

Using your example above you should use:

.messageContainer{
height:26px;    
color:#FFFFFF;  
BACKGROUND-COLOR: #6af; 
VERTICAL-ALIGN: middle;
TEXT-ALIGN: center;
PADDING-TOP:6px;    
}
Michael Shnitzer
  • 2,465
  • 6
  • 25
  • 34