unset

The unset CSS keyword resets a property to its inherited value if the property naturally inherits from its parent, and to its initial value if not. In other words, it behaves like the inherit keyword in the first case, when the property is an inherited property, and like the initial keyword in the second case, when the property is a non-inherited property.

unset can be applied to any CSS property, including the CSS shorthand all.

Examples

Color

HTML

<p>This text is red.</p>
<div class="foo">
  <p>This text is also red.</p>
</div>
<div class="bar">
  <p>This text is green (default inherited value).</p>
</div>

CSS

.foo {
  color: blue;
}
.bar {
  color: green;
}

p {
  color: red;
}
.bar p {
  color: unset;
}

Result

Border

HTML

<p>This text has a red border.</p>
<div>
  <p>This text has a red border.</p>
</div>
<div class="bar">
  <p>This text has a black border (initial default, not inherited).</p>
</div>

CSS

div {
  border: 1px solid green;
}

p {
  border: 1px solid red;
}

.bar p {
  border-color: unset;
}

Result

Specifications

Specification
CSS Cascading and Inheritance Level 3
# inherit-initial

Browser compatibility

BCD tables only load in the browser

See also

  • Use initial to set a property to its initial value.
  • Use revert to reset a property to the value established by the user-agent stylesheet (or by user styles, if any exist).
  • Use inherit to make an element's property the same as its parent.
  • The all property lets you reset all properties to their initial, inherited, reverted, or unset state at once.