I have finished testing the CSS 2.1 and CSS 3 support in Opera 9.
Here are some of the major changes in Opera 9 as far as CSS 2.1 and CSS 3 support:
- Apparently full support for CSS 2.1 basic selectors.
- Corrected support for
:hoverwith universal selectors and the
- Some fixes for margin and width properties.
- Elements can now properly overlap
- Much improved support for CSS 3 media queries.
- Apparently full support for CSS 3 basic selectors (from previously no support).
- Support for most form-related CSS 3 pseudo-elements.
- Some support for CSS 3
opacityproperty, although the support is somewhat flawed (for example, if you have an element with the same color for foreground and background and reduce its opacity, the text’s alphatransparency is rendered separately from the background’s, causing the text to be quite visible).
There isn’t much that I was personally disappointed about. There are still some issues with
:first-line, but they are no worse than the issues other browsers have with them. Counter scope is still handled incorrectly according to the current CSS 2.1 drafts, although the problem can be avoided by remembering to use
counter-reset in the appropriate places. I would have liked
:last-child support, but that’s in CSS 3 anyway. I still notice some slight positioning problems when dealing with very complex styles, although it’s difficult to pinpoint the exact source.
All in all, this release shows that Opera is continuing to make consistent progress in the area of CSS support, and it is certainly giving other leading browsers some strong competition. According to the Web Devout tables, Opera’s overall CSS 2.1 support has risen from 93% to 96%, compared to IE 6’s 52%, IE 7’s 54%, and Firefox 1.5’s 93%. Opera’s support for current CSS 3 changes has risen from 8% to 22%, compared to IE 6’s 10%, IE 7’s 13%, and Firefox 1.5’s 27%.
HTML and DOM support information will come later. Some improvements have been made in both areas.