4

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;

1
  • +1..becouse it is new for me..and simple Commented Jan 31, 2010 at 7:23

5 Answers 5

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");
Sign up to request clarification or add additional context in comments.

2 Comments

Should be addClass("newRules"); - no dot.
Thanks @Kobi. I seem to always initially use selector-syntax when writing a classname :(
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.

Comments

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');

Comments

2

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");

Comments

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;    
}

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.