Last updated on
The CSS box-shadow
property allows you to add multiple shadows, outer (often called drop shadows) or inner, on the HTML elements. To do that you must specify values as horizontal and vertical offsets, blur radius, spread distance, inset and color.
The CSS box-shadow
syntax
Rocket science? Not at all, here’s a quick example:
The above CSS declaration will generate the following shadow effect:
-
A positive value for the horizontal offset draws a shadow that is offset to the right of the box, a negative length to the left.
-
The second length is the vertical offset. A positive value for the vertical offset basically offsets the shadow down, a negative one up.
-
You’re not allowed to use negative values for blur radius. The larger the value, the more the shadow’s edge is blurred, as it can be seen above.
-
Spread distance positive values cause the shadow shape to expand in all directions by the specified radius. Negative ones cause the shadow shape to contract.
-
The
color
is the color of the cast shadow. -
The
inset
keyword, missing in the image above, if present, changes the drop shadow from an outer shadow to an inner shadow
The above theory it’s just a small amount, if you want to read more, then check out the full W3C specs.
CSS box-shadow
examples
Enough theory, let’s see how can you take advantage of this wonderful CSS box-shadow
feature. Below I’ll show you how to enhance your designs with the coolest CSS box-shadow
techniques!
Add depth to your body
Simple drop shadows with pseudo-elements
Use the RGBA color model
Try spicing up shadows using the RGBA color model. The box-shadow
property can be used using RGBA colors to create shadows with differing levels of opacity. If your browsers support the box-shadow
property, then it will definitively support the RGBA color model.
Add multiple effects separated by commas
Also, you can use multiple shadow effects in one CSS declaration, as seen below:
Browser Support
The CSS box-shadow
property that helps to display an inner or outer shadow effect to elements has great browser support that includes:
- Internet Explorer 9 and above
- Firefox 3.5 and above
- Safari & Chrome
- Opera 10.1 and above
- and more