CSS3 Tip: Removing Box Shadows
Adding box shadows is a great way to bring depth and focus to your design. You have probably seen this trick before:
.selector {
-webkit-box-shadow: 0 3px 5px #333;
-moz-box-shadow: 0 3px 5px #333;
box-shadow: 0 3px 5px #333;
}
Update! Browser support has improved. We now can just write
box-shadow: none;
to disable box shadow. Jump to the update for more information.That CSS snippet will add a nice drop shadow to any matching selector
. But what if you want to remove the box shadow from one or more of the matched elements? Easy, just declare none
for any box-shadow property values:
.selector.noshadow {
-webkit-box-shadow: none;
-moz-box-shadow: none;
box-shadow: none;
}
Depending on the cascade, you may need to strengthen the .selector
with greater specificity. Here we disable the box-shadow from all elements classed with .noshadow
. So something like this:
<div class="selector">This box has a shadow</div>
<div class="selector noshadow">This box has no shadow</div>
<div class="selector">This box has a shadow</div>
Update: prefix properties no longer needed
Browser support for box-shadow
has matured. The browser-specific properties prefixed with -webkit-
and -moz-
no longer are required. Now we can add and remove box shadows like so:
.selector {
box-shadow: 0 3px 5px #333; /* add box shadow */
}
.selector {
box-shadow: none; /* remove box shadow */
}
Cheers people.
About the Author
Jeff Starr = Web Developer. Security Specialist. WordPress Buff.