March 22nd, 2017
CSS Grid is now available. CSS Grid supports a two-dimensional grid-based layout system, optimized for responsive user interface design. Elements within the grid can be specified to span multiple columns or rows. Elements positioned in a CSS grid can also be named, making layout code easier to understand. There are lots of excellent resources available to learn more:
- Learn CSS Grid — an awesome compilation of resources by Jen Simmons.
- Can I use CSS Grid Layout
- CSS Grid Layout on MDN.
- CSS Grid – Table layout is back. Be there and be square. by Surma.
- CSS Grid Layout: A New Layout Module for the Web by Manuel Rego.
The WebAssembly API has been enabled by default, allowing developers to run near-native code in the browser without a plugin. WebAssembly is essentially a better replacement for asm.js. We believe it has the potential to bring browser games to the next level.
Opera 44 also adds support for the Credential Management API. This gives users a simpler sign-in process across devices and provides websites with more control over the usage of credentials. The website can use password-based sign-ins via this API. Once logged in, users will be automatically signed back into a site, even if their session has expired.
Other CSS features
caret-colorproperty enables developers to specify the color of the text input cursor.
text-decoration-skip: inkcan be used to make underlines skip descenders, the portion of letters that extend below the text’s baseline.
text-decorationproperties are now available, allowing developers to specify visual effects such as line color and style.
- The new
AudioContext.getOutputTimestamp()method enables developers to synchronize
ConstantSourceNodenow inherit from
AudioScheduledSourceNode, consolidating functionality.
- The new
cancelAndHoldAtTimefunction cancels future
AudioParamevents with times greater than or equal to
cancelTime, allowing developers to preserve the value of the scheduled time in a direct way.
- Developers can now construct WebAudio-specific events such as
Other JS and DOM features
- The Fetch API
Responseclass now supports the .redirected attribute to help web developers avoid untrustworthy responses and reduce the risk of open redirectors.
- The new
padEndformatting tools enable text padding, facilitating tasks like aligning console output or printing numbers with a fixed number of digits.
- To preserve consistency with other
onlostpointercaptureare now part of the
fieldset.elementsnow returns an
HTMLCollectioninstead of an
HTMLFormControlsCollectionto better align with spec.
usemapattribute now requires case-sensitive matching.
- Custom message events and events created by
client.postMessage(message, transfer)in a service worker will now use
Deprecated and removed features
- Support for the
<keygen>element has been removed, causing it to no longer display any controls nor submit form element data, to align with other browsers.
- Locally-trusted SHA-1 certificates will now result in a certificate error page.
<cursor>element has been removed, but cursor icons can still be set via the
- A legacy caller has been removed from
HTMLObjectElement, so the interfaces will now throw exceptions rather than having their instances called as functions.
webkit-prefixed IndexedDB global aliases have been removed, after their deprecation in M38 (Opera 25).
- Support for
onwebkitresourcetimingbufferfullhas been removed from the
Performanceinterface, in favor of
-internal-media-controls-text-track-list*and related pseudo-elements are deprecated and will be removed in M59 (Opera 46). Use custom controls for custom text track selection.
- Support for the obsolete API
webkitCancelRequestAnimationFramehas been removed in favor of
webkitprefix has been removed from
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.