Confirmed – IE8 will NOT support the Opacity property
I’ve been watching the status on the Connect ticket almost daily as this is probably one of the most popular tickets in the whole system, I imagine (along with this one, this one, and this one.
The call for supporting the Opacity property in IE8 stems from the team removing the proprietary ‘Layout’ concept, which renders the filter
property useless (as this document explains), although there had previously been some talk of the longhand value working – this means there is currently no way to emulate opacity in IE8 (the first browser for 10 or so years that doesn’t support a way of emulating this)!!!
A few days ago now, the status on the bug ticket changed – it’d remained closed ever since I was given access to Connect, but its status had changed from ‘By Design’ to ‘Postponed’. Until I got my first copy of the IE8 Beta News pdf through, I had been trying to hunt down exact definitions of these statuses, but to no avail; however now, I have them (word for word):-
- ‘Won’t fix’ –
- generally means we know that we will not be addressing the reported issue, ususally becuase it risks breaking the code in other, more serious ways or because the effort to fix the issue is not justified for the improvement.
- ‘By Design’ –
- generally means the feedback you provided is, at this time, expected behaviour for Internet Exlorer
- ‘Postponed’ –
- means unfortunately we will not be fixing this in IE8, but we will considering it for the next release of IE
Our only hope now is that it includes support for the filter
property (that we all know and love), by re-engineering the property application itself. UPDATE:- They’ve announced that IE8 will be able to emulate Opacity using the filter
property but only by prepending the property with the -ms-
prefix.
I’ve been scouring the web, and everywhere it states this need for the -ms vendor extension. So today I was thinking “Oh yeah, I need to update our old contact pages which have this little stupid bit of opacity for the Lawlz so that it works with IE8″ …but when I took a look in IE8, it was already working!! I double-checked: no compatibility mode. I turned on the IE Developer thingie. By unchecking the regular CSS opacity declaration, nothing changed (as expected). By unchecking the regular (for IE7 and below) filter declaration, the opacity was gone. Meaning, IE8 IS using the old opacity filter declarations… !!
So, now I’m confuzled. I can post an example page.