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 property all.
Color
color is an inherited property.
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
border is a non-inherited property.
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
Browser compatibility
|
Desktop |
Mobile |
|
Chrome |
Edge |
Firefox |
Internet Explorer |
Opera |
Safari |
WebView Android |
Chrome Android |
Firefox for Android |
Opera Android |
Safari on IOS |
Samsung Internet |
unset |
41 |
13 |
27 |
No |
28 |
9.1 |
41 |
41 |
27 |
28 |
9.3 |
4.0 |
See also
- Use the
initial keyword to set a property to its initial value.
- Use the
inherit keyword to make an element's property the same as its parent.
- Use the
revert keyword to reset a property to the value established by the user-agent stylesheet (or by user styles, if any exist).
- Use the
revert-layer keyword to reset a property to the value established in a previous cascade layer.
- The
all property lets you reset all properties to their initial, inherited, reverted, or unset state at once.