I’m definitely late to the party! though it is better than not to show up at all 😎
There are a ton of articles on internet about the moderately latest CSS properties such as filter, background-blend-mode and mix-blend-mode. Neglecting the fact that it is not possible to use these features in production apps in near future (due to lack of old browsers support), I just wanted to look how it works.
tl;dr
filter
Applies different filters on top of image. Browser support
| Filter function | value type | value range | 
|---|---|---|
| blur() | length | length in px | 
| hue-rotate() | angle | 0deg - 360deg | 
| opacity() | number/percentage | 0% - 100% or +ve number | 
| grayscale() | number/percentage | 0% - 100% or +ve number | 
| sepia() | number/percentage | 0% - 100% or +ve number | 
| invert() | number/percentage | 0% - 100% or +ve number | 
| saturate() | number/percentage | 0% - (any number)% or +ve number | 
| brightness() | number/percentage | 0% - (any number)% or +ve number | 
| contrast() | number/percentage | 0% - (any number)% or +ve number | 
Eg:
.image {
    -webkit-filter: blur(2px) saturate(110%);
    filter: blur(2px saturate(110%));
}
background-blend-mode
Background image is blended with background color of the same element. Browser support
Eg:
.bg-image {
    background-image: url('img.jpg');
    background-color: deeppink;
    background-blend-mode: multiply;
}
mix-blend-mode
A div is blended on top of another div with background image. Browser support
Eg:
.bg-image {
    background-image: url('img.jpg');
    background-color: deeppink;
}
.overlay-div {
    width: 400px;
    height: 300px;
    background-color: yellow;
    mix-blend-mode: lighten;
}
| background-blend-mode & mix-blend-mode values | 
|---|
| normal | 
| multiply | 
| screen | 
| overlay | 
| darken | 
| lighten | 
| color-dodge | 
| color-burn | 
| hard-light | 
| soft-light | 
| difference | 
| exclusion | 
| hue | 
| saturation | 
| luminosity |