Opera 22 released
Opera 22 (based on Chromium 35) for Mac and Windows and for Android is out! Here’s what that means for web developers.
CSS background blending modes
Support for the background-blend-mode
CSS property is now enabled by default. This feature allows you to control how background images and background colors blend. Check out a demo, or see Getting to know CSS Blend Modes for more information.
CSS Font Loading
The CSS Font Loading specification defines a promise-based JavaScript API to programmatically download web fonts. This makes it possible for web developers to take a different action based on whether or not the font was successfully loaded, or just to get notified when the font has completed loading. Here’s a simple example:
var face = new FontFace('My Cool Font', 'url(http://example.com/my-cool-font.woff)', {
'weight': 'bold'
});
face.load().then(function() {
console.log('My Cool Font was successfully loaded!');
}).catch(function() {
console.log('Something went wrong while trying to load My Cool Font.');
});
Unprefixed Shadow DOM
Opera previously supported the webkitShadowRoot
property as well as the webkitCreateShadowRoot
method for DOM elements. We now support the standardized and unprefixed names for them, i.e. shadowRoot
and createShadowRoot
, as well as the newly added getDestinationInsertionPoints
method. To learn more about Shadow DOM, read this updated tutorial.
Unprefixed Web Audio API
Opera previously supported the global webkitAudioContext
and webkitOfflineAudioContext
methods. These have now been renamed to their official, unprefixed names: AudioContext
and OfflineAudioContext
.
More control over mousewheel-based scroll events
As of this release, web developers can now control or even cancel “zoom” events invoked by pressing Ctrl
while scrolling the mousewheel. Sites that want to do something more appropriate for the user than trigger the browser’s native zoom, can now do so.
If you’re interested in experimenting with features that are in the pipeline for future versions of Opera, we recommend following our Opera Developer stream.