The unset CSS keyword resets a property to its inherited value if it inherits from its parent, and to its initial value if not. In other words, it behaves like the inherit keyword in the first case, and like the initial keyword in the second case. It 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 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 Status Comment
CSS Cascading and Inheritance Level 4
The definition of 'unset' in that specification.
Working Draft No changes from Level 3.
CSS Cascading and Inheritance Level 3
The definition of 'unset' in that specification.
Candidate Recommendation Initial definition.

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support41 Yes27 No Yes9.1
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support Yes Yes Yes27 Yes9.3 ?

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.

Document Tags and Contributors

 Contributors to this page: fscholz, mfluehr, xfq, jrencz, Krinkle, RedLucas, cvrebert, f0086, Sebastianz, myakura, teoli
 Last updated by: fscholz,