Last updated: March 3, 2010
This document and its associated support tables apply to Opera products using the Opera Presto 2.4 rendering engine. It is a living document collection and will be updated as Web specifications are added to the Opera Presto 2.4 rendering engine. Previous Opera Web specification support documents can be found at Web specifications supported in Opera.
For your convenience
<canvas> shadowswidget.preferences; see the W3C Widgets 1.0: APIs and Events.opera:configwindow.btoa and window.atob for base64 encoding and decodingOpera Web specification support tables are provided at the beginning of each topic where applicable. This section provides hyperlinks to all of them in one location for your convenience and reference.
<canvas> elementARIA is a proposal/work in progress. Opera participates within this working group which will ultimately release the ARIA specification. Please see the ARIA Working Draft and Editor's Draft for details.
Opera supports the HTML implementation of ARIA according to the latest draft. Here is an example:
<div role="checkbox" aria-checked="true" tabindex="0"></div>
-o-transform property support-o-transform-origin property supportvisibility:collapse property/value pair is now supported (from CSS 2.1)Opera supports all of CSS 1.
CSS 2.1 is currently a W3C Candidate Recommendation.
Note that these modules are at an early stage of development and may be changed or removed at any time.
background shorthand formatborder-image shorthand format is supported for Border Images.
border-image-source, border-image-slice, border-image-width, border-image-outset and border-image-repeat
are ignored.box-decoration-break property
content
is applicable on all elements, not just on the
:before
and
:after
pseudo-element; see section 12.2
box-sizing; see section 7.1
outline-offset; see section 8.5
overflow-x; see section 11.1
overflow-y; see section 11.1
nav-up, nav-right, nav-down, nav-left, nav-index; see section 10.2.2
[54]
-o-background-size; see section 3.9 (uses
Opera vendor prefix)
-o-table-baseline
(uses Opera vendor prefix)box-sizing propertyoutline-offset propertynav-index propertynav-up, nav-right, nav-down and nav-left properties
opacity; see section 3.2
currentColor; see section 4.4font-stretch propertyfont-size-adjust propertyfont-stretch descriptorunicode-range descriptor@font-face
CSS at-rules) with the
font-family
descriptor
src
descriptor with local and remoteorientation.
word-wrap
property with its
break-word value; see W3C CSS3 Text Module section 5.2 Force Wrapping: the 'word-wrap'
property
text-shadow, including multiple shadows; see
text-shadows, multiple shadows-o-text-overflow (uses Opera vendor prefix); see W3C CSS3 Text Module section 9.3Opera fully supports the CSS Mobile profile.
WAP CSS is an extension of the CSS Mobile Profile. Opera fully supports WCSS versions 1.0 and 1.1.
In order to display an XML document, a CSS style sheet should be present. Authors can attach style sheets to their XML documents through a processing instruction. Here is a simple example:
<?xml version="1.0"?> <?xml-stylesheet href="shakespeare.css" type="text/css"?>
Opera has full support for the Fundamental interfaces of DOM 2 Core [61], with minor exceptions. Opera does not support the following Extended interfaces on purpose, expecting a future revision of DOM Core will remove them:
Opera supports several carefully selected DOM 3 Core features. Several of these are:
compareDocumentPosition() methodtextContent attributeOpera has full support for DOM 2 HTML, with minor exceptions corresponding to HTML support exceptions.
Opera has full support of DOM 2 Events with no exceptions.
Opera supports DOM 2 Style with some exceptions.
Opera supports the DOM 2 Range.
Opera supports DOM 2 Traversal, with some exceptions.
Opera supports the Element Traversal specification (W3C Proposed Recommendation).
Opera supports Load and Save, with some exceptions.
Opera supports DOM 3 XPath, with the same exceptions as with XSLT.
XMLHttpRequest (XHR)
XMLHttpRequest is a work in progress, and we expect
to fully support it when it becomes a recommendation.
ECMAScript is the standardized version of JavaScript Core. It is being standardized through the ECMA standards body. ECMAScript does not include browser and document related objects.
Opera supports the entire ECMA-262 2nd and 3rd standards, with no exceptions. They are more or less aligned with JavaScript 1.3/1.5 Core.
Opera is actively participating with ECMA TC39 in developing successors to the current spec. Opera will support future editions of the language as consensus is reached and the specifications become finalized.
Opera supports the OpenGL 2D/3D graphics API; see OpenGL API
Opera supports the Direct3D device driver interface (DDI); see Direct3D
<canvas>
element
Opera supports the <canvas>
[76] element specification, including canvas shadows, which is currently a work in progress.
There is support for listening to any event in the svg module. Some events are not sent by core, for example: activate.
onkeyup, onkeydown and
onkeypress don't register a corresponding event listener for those events.element.addEventListener('keydown',
keyhandler-function, false).evt.preventDefault() to prevent any key-event that should be handled
only by the script from escaping upwards to the UI which may be listening for shortcut keys.SVGElement.currentFps and SVGElement.targetFps
properties. These properties respectively read and control SVG frames per second; see this
Opera reference.Opera supports the following SVG inclusion types.
<object> element<iframe> element<embed> element<img> elementbackground-image propertylist-style-image propertySome content may fail to render if sent with the wrong MIME-type, or if the namespace declarations are missing.
image/svg+xml.http://www.w3.org/2000/svg and xlink: http://www.w3.org/1999/xlink.font-size: 12; in CSS will mean the value is invalid, and thus it will be ignored.styleelements,
styleattributes and external stylesheets.
content property can also embed SVG.Support has been added for the buffered-rendering property; see section 11.10.5.
SVG is output as a bitmap image to the printer.
Opera supports:
Opera supports HTML 4.01 [2] with these exceptions:
option element.col width attribute does not support multilengths.object standby and declare attributes are not supported.char and charoff are not supported.Opera adds support for the next version of HTML - HTML5. For your reference, the preceding two external hyperlinks are provided for HTML5 drafts/works in progress by the W3C. Please note that changes to the draft specification and notes may be made at any time. HTML5 is a work in progress and respectively, Opera considers its implementations for HTML5 experimental until its specification has stabilized. Support is provided for the following:
<audio> and <video> elements with the following exceptions:
preload attribute is not supported; for your reference, autobuffer was changed to preload in the specification.buffered, seekable and played IDL attributes always return empty TimeRanges objects.playbackRate and defaultPlaybackRate do not affect playback speed or direction.<canvas> element/API — see
section 4.8.11 [5]
shadowcontenteditable attribute — see
section 6.7 [6]designMode DOM attribute — see
section 5.2.2 [7]innerHTML — see section 3.7.2
[8]getElementsByClassName — see section
2.4 [9]embed element — see section 4.8.4
[10]audio element/object — see section 4.8.8
[11]<table>:
vertical-align and text-indent in <table> elements and replaced contentOpera has experimental support for HTML5 Forms [14] which is a work in progress. HTML5 Forms replaces the separate Web Forms 2.0 specification which has been integrated into the HTML5 specification.
Opera does not have a XHTML content-type mode of text/html. XHTML written as text/html is handled
just like HTML.
Opera supports XHTML 1.1 [15] with these exceptions:
col width attribute does not support multilengths.object standby and declare attributes are not supported.table cell attributes char and charoff are not supported.Opera supports XHTML Basic [16] with the following exceptions:
standby, declare attributes are not supported.inputmode attribute is supported, however
Opera supports the XHTML Mobile Profile 1.0 and 1.1 [17] and extensions to XHTML Basic with no exceptions.
declare attribute of object.With the IBM Voice component, Opera fully supports the XHTML+Voice profile 1.2 [19] (and the Mobile Profile subset).
application/xml,
application/xhtml+xml, application/x-xhtml+voice+xml) for XML Events to take effect.Wireless Markup Language versions 1.0 to 1.3, while based on an HTML subset, must be considered a separate markup language for most practical purposes. WML 2.0 can better be considered an extension of XHTML Basic with WML 1.3 features. Opera supports WML 1.3 and 2.0 with the following exceptions:
columns attribute<lang:class>wml:getvar elementOpera supports the current working draft of the MathML for CSS profile [26] with the following exceptions:
mi, mn, mo, ms, mspace, mtext) are not discarded.Opera supports HTTP 1.0 (RFC 1945) and HTTP 1.1 (RFC 2616) protocols with the following exception:
Content-LocationOpera does support:
no-cache (always check for fresh document)no-store (don't save to disk)Opera provides support for the following items:
Opera supports 128 and 256 bit encryption (RSA, DSA and DH key exchange methods) for:
This is supported for HTTP (web), NNTP (news), POP and SMTP (e-mail).
Further support is provided for
A simple online newsreader with support for encrypted newsservers and newsserver with passwords is provided.
Opera can work with all the characters in the Unicode specification.
Opera implements the following writing system related functionality improvements:
Opera relies on the operating system to perform:
Although Opera works with the Unicode character set and its character encodings of UTF-16 and UTF-8, most text on the Internet is encoded in legacy encodings, for instance:
Opera handles this by detecting the character encoding used, and converting it to UTF-16. The user has three options for how to handle these pages.
Opera supports bidirectional text as described in Unicode [73], HTML [74], and CSS [75].
widget.preferences; see the W3C Widgets 1.0: APIs and Events.opera:configOpera supports both the W3C Widget family of specifications and the legacy Opera Widgets format. The formats are different and not compatible. Opera Presto supports the proprietary Opera Widgets format for legacy reasons:
Further information regarding Opera Presto support for the W3C Widgets family of specifications and the Opera proprietary Widgets format will be posted here as it is implemented.
network="public"
A new security model has been intoduced for Opera 10 (Opera Presto 2.2) which among other things means that widgets
do not have network access on by default. In order to enable network access for non-intranet sites, add a
network
attribute to the
widget
element in the config.xml of your widget with the value
"public". For example:
<widget network="public">
...
</widget>
This will make your widget work as intended in Opera 10, but will not affect previous versions. Older browsers will simply ignore the network attribute and give your widget access as per the existing security model.
network="private"
and
network="public private"
The
widget
element attributes
network="private"
and
network="public private"
can enable network access for either private networks, public networks, or both. For example:
<widget network="private">
...
</widget>
<widget network="public private">
...
</widget>
Opera supports XML 1.0 and XML 1.1, and can parse and display XML documents.
text/xml, application/xml or with a subtype ending on +xml
will be treated as an XML document.content-type is not available, the ".xml" file extension will also make the document be treated as XML.text/xml, but otherwise follows
RFC3023 [21].
application/xml.application/xml instead of text/xml, and the use of an explicit character set
declaration such as charset=UTF-8.The Opera parser supports Binary XML; see XML Binary Characterization Working Group.
Opera does not offer support for XForms; see XForms, but extends support for the HTML5 Forms module as an alternative; see HTML5 Forms module.
Opera supports XSLT style sheets with the <?xml-stylesheet?> processing instruction; see
Associating Style Sheets with XML documents Version 1.0 [22]. Opera supports XSLT 1.0 and XPath 1.0 with the following exceptions:
namespace-alias element is not supported.Opera fully supports XML namespaces [23].
text/html was discontinued with Opera 9, and is not supported.xml:id attribute [24].Opera supports XML Events [25] and it is used in X+V.
script and VoiceXML form can
be handlers for XML Events.Need help? Hit F1 anytime while using Opera to access our online help files, or go here.