CSS filter generator

Move the sliders to combine blur, brightness, contrast, grayscale, hue-rotate, invert, opacity, saturate, sepia and drop-shadow. The sample image updates instantly and only the functions you change are written to the CSS.

CSS

filter: none;

Runs in your browser: nothing you enter is sent anywhere.

How to use it

  1. Drag the sliders. The sample picture changes as you go.
  2. Tick Add drop shadow if you want a shadow that follows the shape, then set its offset, blur, color and opacity.
  3. Press Copy and paste the rule onto an image, a video or any element.
  4. Reset all returns every slider to its neutral position.

What the values mean

  • blur takes pixels; the other functions in this tool take percentages, except hue-rotate, which takes degrees.
  • brightness, contrast and saturate start at 100 percent. Below that they reduce the effect, above they boost it.
  • grayscale, invert and sepia start at 0 percent and top out at 100 percent here.
  • opacity below 100 percent makes the element see-through.

Example

filter: grayscale(100%) contrast(120%); turns a photo black and white with a bit more punch.

Tips

  • Filters are applied to the element and its children together, so a filter on a card also changes the text inside it.
  • Large blur values on big elements can be slow on weak devices. Keep them moderate on animated elements.
  • To tint only the background behind a panel, look at backdrop-filter instead; the glassmorphism generator covers it.

Frequently asked questions

Does the order of filter functions matter?

Yes. CSS applies them from left to right, so blur(4px) followed by brightness(150%) can look different from the reverse. This tool always writes them in the same order: blur, brightness, contrast, grayscale, hue-rotate, invert, opacity, saturate, sepia, drop-shadow.

Why are some functions missing from the output?

A function left at its neutral value does nothing, so it is omitted: 100 percent for brightness, contrast, opacity and saturate, and 0 for the rest. If every slider is neutral the rule reads filter: none.

What is the difference between filter: drop-shadow() and box-shadow?

box-shadow follows the rectangular box of an element. drop-shadow() follows the visible shape, so it respects transparent areas of a PNG or SVG. It has no spread or inset option.

Does the filter change the original image file?

No. The filter is applied by the browser when it draws the element, and the image file stays as it is. Nothing is uploaded: the preview uses a built-in drawing.

More in Color

All tools in this category: Color ·Updated November 3, 2026

Privacy choices

Google Analytics shows us which tools are used and whether they work. It may set cookies. Your choice is kept in this browser.