Question

For my current project i used filter -webkit-filter: brightness(-20%);-moz-filter: brightness(-20%); But somewhy, this filter doesnt works in firefox and opera(i have opera prefix too). I found, the way how this can be used, but i need to turn brightness filter into svg code. Any ideas how can i do this?
What i have to do, is a small gallery, with darkened images, and with normal images on hover without using 2x images.

Was it helpful?

Solution

You want to use an SVG filter. An example of a filter that will darken your image by a fixed amount in each channel is:

<filter id="darken">
<feComponentTransfer>
       <feFuncR type="linear" intercept="-0.2" slope="1"/>
       <feFuncG type="linear" intercept="-0.2" slope="1"/>
       <feFuncB type="linear" intercept="-0.2" slope="1"/>
   </feComponentTransfer>
</filter>

This will darken your image by 20% in each color channel. Full jsfiddle

OTHER TIPS

If you need a more cross-browser solution, you could make the images translucent when they are not hovered:

img {
    opacity: .7;
}
img:hover {
    opacity: 1;
}

This will have the effect of darkening them when they are on a dark background.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top