!important modifier

This Cascading Style Sheets (CSS) feature improves accessibility of documents by giving users with special requirements (large fonts, color combinations, and so on) control over presentation.

CSS 2.1, Section 6.4.2



{ declaration !important }



A CSS property and value declaration within a rule set.

Standards information


CSS attempts to create a "balance of power" between author and user style sheets. By default, rules in an author's style sheet override those in a user's style sheet. However, for balance, an !important declaration takes precedence over a normal declaration. Both author and user style sheets may contain !important declarations, and user !important rules override author !important rules.

Declaring a shorthand property (for instance, the background property) to be !important is equivalent to declaring all of its sub-properties to be !important.


The first rule in the user's style sheet in the following example contains an !important declaration, which overrides the corresponding declaration in the author's style sheet. The second declaration will also take precedence due to being marked !important. However, the third rule in the user's style sheet is not !important, and will therefore lose to the second rule in the author's style sheet (which happens to set style on a shorthand property). Also, the third author rule will lose to the second author rule since the second rule is !important. This shows that !important declarations also have a function within author style sheets.

/* From the user's style sheet */
p { text-indent: 1em ! important }
p { font-style: italic ! important }
p { font-size: 18pt }
/* From the author's style sheet */
p { text-indent: 1.5em !important }
p { font: normal 12pt sans-serif !important }
p { font-size: 24pt }