Skip to content
View in the app

A better way to browse. Learn more.

OKCCN - XenForo & IPS Plugin Marketplace

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.
  • Language

CSS The !important Rule

Featured Replies

  • Administrators

CSS The !important Rule


CSS !important Rule

The !important rule is used to give the value of a specific property the highest priority.

The !important rule will override ALL previous styling rules for that specific property on that element!

The !important keyword is added to the end of a CSS declaration, before the semicolon.

Syntax

selector {
  property: value !important;
}

CSS !important Rule Example

In the following example, all three paragraphs will get a yellow background color, even though the inline style, id selector, and the class selector have a higher specificity. The !important rule overrides ALL styling rules for that specific property on that element!

Example

Using the !important rule:

<html>
<head>
<style>
p {
  background-color: yellow !important;
}

#myid {
  background-color: blue;
}

.myclass {
  background-color: gray;
}

</style>
</head>
<body>

<p style="background-color:orange;">This is a paragraph.</p>
<p class="myclass">This is a paragraph.</p>
<p id="myid">This is a paragraph.</p>

</body>
</html>

Try it Yourself »



Use !important Sparingly

The only way to override an !important rule is to include another !important rule on a declaration with the same (or higher) specificity in the source code - and here the problem starts!

The CSS code will be confusing and the debugging will be hard! Especially if you have a large style sheet!

In the following example, it is not very clear which color is considered most important:

Example

p {
  background-color: red !important;
}

#myid {
  background-color: blue !important;
}

.myclass {
  background-color: gray !important;
}

Try it Yourself »


A Few Fair Uses of !important

The !important rule can be useful in some cases, like:

1. To override a style that cannot be overridden in any other way. This could be if you are working in a Content Management System (CMS) and cannot edit the CSS code. Then you can set some custom styles to override some of the CMS styles.

2. To respect user preferences. Some users have motion sensitivity and prefer websites with less animation. CSS has a @media feature called prefers-reduced-motion that lets you check if a user has asked to reduce motion, such as animations or transitions. You can use !important to turn off, or tone down animations and transitions for the users who has activated this setting on their computer:

Example

@media (prefers-reduced-motion: reduce) {
  * {
    animation: none !important;
    transition: none !important;
  }
}
Try it Yourself »

You will learn more about media queries in a later chapter.

3. To create a highly specific, unchangeable style for a specific element. Assume we want a special look for all link buttons on a page:

Example

Style link buttons with a gray background color, white text, and some padding and border:

a.button {
  background-color: #8c8c8c;
  color: white;
  padding: 5px;
  border: 1px solid black;
  text-decoration: none;
}

Try it Yourself »

Now, if we put a link button inside another element with higher specificity, the properties might get in conflict. Here is an example of this:

Example

a.button {
  background-color: #8c8c8c;
  color: white;
  padding: 5px;
  border: 1px solid black;
  text-decoration: none;
}

#myDiv a {
  color: red;
  background-color: yellow;
}

Try it Yourself »

To "force" all buttons to have the same look, no matter what, we can add the !important rule to the properties of the button, like this:

Example

a.button {
  background-color: #8c8c8c !important;
  color: white !important;
  padding: 5px !important;
  border: 1px solid black !important;
  text-decoration: none !important;
}

#myDiv a {
  color: red;
  background-color: yellow;
}

Try it Yourself »




Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.