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
  • 64,147
  • 13
  • 107
  • 117
Vicky
  • 9,379
  • 15
  • 68
  • 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
  • 259,174
  • 73
  • 529
  • 557
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
  • 64,147
  • 13
  • 107
  • 117
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
  • 80,803
  • 17
  • 95
  • 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
  • 21,928
  • 22
  • 94
  • 135
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,315
  • 5
  • 24
  • 34