Gradients add depth, visual interest, and modern aesthetics to web designs—all without loading external images. From subtle backgrounds to dramatic hero sections, CSS gradients are essential for modern web development.
Why Use CSS Gradients?
- No image requests: Faster page loads than image backgrounds
- Infinitely scalable: Perfect at any resolution, including retina
- Easy to modify: Change colors in code, no image editing needed
- Animatable: Create dynamic effects with transitions
- Responsive: Adapt smoothly to any container size
Create gradients visually with our CSS gradient generator.
Types of CSS Gradients
Linear Gradients
Color transitions along a straight line:
background: linear-gradient(to right, blue, purple);
Direction options:
to top,to bottom,to left,to rightto top right,to bottom left(corners)45deg,135deg(specific angles)
Radial Gradients
Color radiates from a center point:
background: radial-gradient(circle, yellow, orange);
Shape options:
circle- circular gradientellipse- follows container proportions (default)
Conic Gradients
Color rotates around a center point (like a color wheel):
background: conic-gradient(red, yellow, lime, aqua, blue, magenta, red);
Perfect for pie charts and colorful effects.
Color Stops
Control where colors appear in the gradient:
/* Default: evenly distributed */
linear-gradient(red, yellow, green);
/* Custom positions */
linear-gradient(red 0%, yellow 30%, green 100%);
/* Hard color stops (no transition) */
linear-gradient(red 50%, blue 50%);
Practical Examples
Subtle Background
background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
Soft professional gradient for page backgrounds.
Button Gradient
background: linear-gradient(to bottom, #4CAF50, #388E3C);
/* Add hover state */
background: linear-gradient(to bottom, #5CBF60, #489E4C);
Text Gradient
background: linear-gradient(to right, #ff6b6b, #4ecdc4);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
Overlay on Images
background:
linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)),
url('image.jpg');
Stripe Pattern
background: repeating-linear-gradient(
45deg,
#606dbc,
#606dbc 10px,
#465298 10px,
#465298 20px
);
Multi-Layer Gradients
Stack gradients for complex effects:
background:
linear-gradient(217deg, rgba(255,0,0,.8), rgba(255,0,0,0) 70%),
linear-gradient(127deg, rgba(0,255,0,.8), rgba(0,255,0,0) 70%),
linear-gradient(336deg, rgba(0,0,255,.8), rgba(0,0,255,0) 70%);
Gradient Animation
Create movement with background position:
background: linear-gradient(270deg, #ee7752, #e73c7e, #23a6d5, #23d5ab);
background-size: 400% 400%;
animation: gradient 15s ease infinite;
@keyframes gradient {
0% { background-position: 0% 50%; }
50% { background-position: 100% 50%; }
100% { background-position: 0% 50%; }
}
Browser Support
CSS gradients have excellent support:
- Linear/Radial: All modern browsers, IE10+
- Conic: All modern browsers (not IE)
- Prefixes: Generally not needed anymore
Gradient Best Practices
- Keep it subtle: Dramatic gradients can overwhelm content
- Test contrast: Ensure text remains readable
- Consider dark mode: Gradients may need adjustment
- Limit color stops: 2-3 colors usually work best
- Use CSS variables: Makes theme changes easier
Tools for Creating Gradients
- CSS Gradient Generator - Visual gradient creation
- Color Picker - Find perfect colors
- HEX to RGB Converter - Convert color formats
CSS gradients replace heavy image files with lightweight, flexible code. Experiment with our gradient generator to create stunning effects.