This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2016.
The opacity() CSS function applies transparency to the samples in the input image. Its result is a <filter-function>.
filter: opacity(1);
filter: opacity(80%);
filter: opacity(50%);
filter: opacity(0.2);
filter: opacity(0);
<section id="default-example">
<img
class="transition-all"
id="example-element"
src="/shared-assets/images/examples/firefox-logo.svg"
width="200" />
</section>
Note: This function is similar to the more established opacity property. The difference is that with filters, some browsers provide hardware acceleration for better performance.
opacity(amount)
amount OptionalThe amount of the conversion, specified as a <number> or a <percentage>. A value of 0% is completely transparent, while a value of 100% leaves the input unchanged. Values between 0% and 100% are linear multipliers on the effect. The initial value for interpolation is 1. The default value is 1.
<opacity()> =
opacity( [ <number> | <percentage> ]? )
opacity(0%) /* Completely transparent */ opacity(50%) /* 50% transparent */ opacity() /* No effect */ opacity(1)
| Specification |
|---|
| Filter Effects Module Level 1> # funcdef-filter-opacity> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
opacity |
18 | 12 | 35 | 15 | 6 | 53 | 35 | 14 | 6 | 6.0 | 4.4 | 6 |
<filter-function> functions available to be used in values of the filter and backdrop-filter properties include: opacity property
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/filter-function/opacity