Can I Override !important?
Answer : Ans is YES !important can be overridden but you can not override !important by a normal declaration. It has to be higher specificity than all other declarations. However it can be overridden with a higher specificity !important declaration. This code snippet in Firefox's parser will explain how it works: if (HasImportantBit(aPropID)) { // When parsing a declaration block, an !important declaration // is not overwritten by an ordinary declaration of the same // property later in the block. However, CSSOM manipulations // come through here too, and in that case we do want to // overwrite the property. if (!aOverrideImportant) { aFromBlock.ClearLonghandProperty(aPropID); return PR_FALSE; } changed = PR_TRUE; ClearImportantBit(aPropID); } Good read Specifics on CSS Specificity CSS Specificity: Things You Should Know Here's an example to show how to override CSS HTML <div id="hola" class="hola"...