This page applies to the Linux and Windows version 8 of Opera. For Opera version 7, see Specifications for Opera 7.
HTML and XHTML support | XHTML Mobile Profile support | XHTML+Voice support | WML support | XML support | CSS support | ECMAScript support | DOM support | Networking support | Text and internationalization | Graphics support
Opera version 8 supports HTML 4.01 with these exceptions:
option elementcol width attribute does not support multilengthsobject standby and declare attributes are not supported.char and charoff are not supported.
There are two "modes" of XHTML support, one where
the document has the text/html content type and the other
where it has one of text/xml, application/xml
or application/xhtml+xml. In the first case the document
is handled as any other HTML document (giving de
facto support for XHTML 1.0, XHTML Basic and XHTML 1.1). In the second case
XHTML will be treated as XML with predetermined
functionality for HTML elements and attributes.
Opera supports both modes.
Opera version 8 supports XHTML 1.1 with these exceptions:
option elementcol width attribute does not support multilengthsobject standby and declare attributes are not supported.char and charoff are not supportedOpera 8 supports XHTML Basic with no exceptions.
Opera 8 supports the XHTML Mobile Profile 1.0 and 1.1 extensions to XHTML Basic with no exceptions.
With the IBM Voice component Opera supports the XHTML+Voice profile 1.2 (and the Mobile Profile subset). The support of X+V includes support of CSS3 Speech (with an -xv- prefix as this module is under preparation). X+V needs to be served as an XML media type (application/xml, application/xhtml+xml, application/x-xhtml+voice+xml) for XML Events to take effect. For more information see the X+V developer documentation.
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 8 supports WML 1.3 and 2.0 with the following exceptions:
Opera 8 can parse and display XML documents. Documents with Content-type "text/xml" or "application/xml" will be treated as an XML document. If a Content-type is not available, the ".xml" file extension will also make the document be treated as XML.
Opera does not support XSL formatting objects, and neither does it natively support XSLT transformations. XML documents transformed server side will be parsed and displayed by Opera just like any other XML document.
Opera 8 fully supports XML namespaces. Here are some of the namespaces Opera recognizes:
| Specification | Namespace |
|---|---|
| XML | |
| XML Events | http://www.w3.org/2001/xml-events |
| XHTML | http://www.w3.org/1999/xhtml |
| WML | http://www.wapforum.org/2001/wml |
| VoiceXML | http://www.w3.org/2001/vxml |
| XHTML+Voice | http://www.voicexml.org/2002/xhtml+voice |
| SVG | http://www.w3.org/2000/svg |
Namespace support for text/html has been discontinued with Opera 8.
Opera supports XML Events and it is used in X+V. HTML script and VoiceXML form can be handlers for XML Events.
Opera 8 supports all of CSS1.
Opera 8 supports all of CSS2 with the exception of:
font-size-adjust,
font-stretch,
marker-offset,
marks, and
text-shadow,
CSS 2.1 is currently a W3C Candidate Recommendation, compliance is measured against the latest version, but the final Recommendation may differ.
Opera 8 supports all of CSS2.1 with the exception of:
visibilty: collapse and white-space: pre-line property valuesOpera 8 fully supports CSS Mobile profile.
WAP CSS is an extension of CSS Mobile Profile. Opera 8 fully supports WCSS versions 1.0 and 1.1.
Note that these properties are at an early stage of development, they may be changed or removed from the specifications at any time. Use them as experimental.
content is applicable on all elements, not just on the :before and :after pseudo-elementsbox-sizingOpera 8 uses CSS-like properties to attach information to XML elements that cannot otherwise be represented. Three extension properties have been implemented to allow hyperlinks and images to be included in XML documents. Most often it's better for authors to use XHTML - rather than the properties described below - to represent document semantics, but they are described here for reference.
| Property: | -o-link |
|---|---|
| Values: | none | attr(<attribute-name>) |
| Initial: | none |
| Inherited: | no |
| Description: | This property sets the value of the "link" variable which can later be used to generate a link through the "-o-link-source" property. |
| Property: | -o-link-source |
| Values: | none | current | next |
| Initial: | none |
| Inherited: | no |
| Description: | This property sets the element to be a source anchor and, if so, declares which value of the '-o-link' variable that should be used: the current or the next. |
| Property: | -o-replace |
| Values: | none | attr(x) |
| Initial: | none |
| Inherited: | no |
| Description: | This property declares the element to be replaced or not. If replaced, the attr() function is used to point to the attribute where the URI to the content can be found. |
When using the Opera browser, you may notice that some pages are displayed differently than in other browsers. In most cases, the differences are caused by errors in the pages that are being displayed. Few Web pages are authored according to W3C's specifications which Opera supports. Opera 8 has two rendering modes, Standards Mode and Quirks Mode. For a full documentation on this, see separate document.
hr is set with the background-color
CSS property in Opera and Netscape 6+. In Netscape 4 and IE it is set with the color property.
Setting both properties to the desired color will give the same result in all browsers. This will not give the intended effect
if content is added to hr with the content property, but Netscape 4
and IE don't support this anyway. body element margin: 8px,
Opera uses padding: 8px. Padding is the margin between the body element and the content,
while margin is the margin between the body and the html element (or the
head element if visible). If either margin or padding
is explicitly set on body, the other property should be set too.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"?>
If no style sheet is present and the page is not namespaced to HTML, Opera 8 will use the initial values on all CSS properties to display the document. All elements will be inline, and all text will be rendered in the same font.
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 8 supports the entire ECMA-262 2ed and 3ed standard, with no exceptions. They are more or less aligned with JavaScript 1.3/1.5 Core.
Opera 8 has full support for the Fundamental interfaces, apart from these exceptions:
Opera 8 does not support these Extended interfaces:
Opera 8 has full support for this module, apart from these objects:
and these properties and methods:
Opera 8 has full support of DOM 2 Events and UI Events interfaces, with no exceptions.
Opera 8 has partial support of DOM 2 Style, consisting of support for these objects:
Opera supports all of CSS2Properties except for these properties and methods:
Opera supports all of CSS2Properties except for these properties:
Opera 8 has full support for HTTP 1.0 and HTTP 1.1. Here are some highlights:
Encryption: 128 bit encryption (RSA key exchange only) for the Secure Sockets Layer (SSL) versions 2 and 3, and the successor Transport Layer Security (TLS) v1.0. This is supported for HTTP (web), NNTP (news), POP and SMTP e-mail). Support for generating private keys and submitting certificate requests.
News: simple online newsreader with support for encrypted newsservers and newsserver with passwords. Can decode single article attachments, MIME or uuencoded.
FTP including resume download is supported.
It is possible to download to file for both FTP and HTTP.
Opera can work with all the characters in the Unicode specification. All text communicated to Opera from the network is converted into Unicode.
In order for Opera to render Unicode characters, the needed glyphs have to be available in the fonts on your system. This might be a problem for older Windows systems. For information on available fonts, see Unicode fonts for Windows computers.
Opera 8 implements the following writing system related functionality:
Opera relies on the operating system to perform:
Although Opera works with Unicode encodings (UTF-16 and UTF-8), most text on the Internet is encoded in legacy encodings, for instance ISO 8859-1, Windows-1251, Shift-JIS, EUC-KR. 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.
This table shows all the legacy encodings Opera supports in addition to Unicode:
| Encoding | Category | Comments |
|---|---|---|
| ISO 8859-1 | Latin | |
| ISO 8859-2 | Latin | Used in Eastern Europe |
| ISO 8859-3 | Latin | Rare |
| ISO 8859-4 | Latin | Sami and Baltic country |
| ISO 8859-9 | Latin | Turkish |
| ISO 8859-10 | Latin | Inuit, Sami, and Icelandic |
| ISO 8859-13 | Latin | Rare |
| ISO 8859-14 | Latin | Celtic |
| ISO 8859-15 | Latin | Intended to supersede 8859-1 |
| Windows-1250 | Latin | Used in Eastern Europe |
| Windows-1252 | Latin | |
| Windows-1254 | Latin | Turkish |
| Windows-1257 | Latin | Baltic |
| Windows-1258 | Latin | Vietnamese |
| VISCII | Latin | Vietnamese |
| IBM 866 | Cyrillic | |
| ISO 8859-5 | Cyrillic | |
| koi8-r | Cyrillic | |
| koi8-u | Cyrillic | Ukrainian version of koi8-r |
| Windows-1251 | Cyrillic | |
| ISO 8859-6 | Arabic | |
| Windows-1256 | Arabic | |
| ISO 8859-7 | Greek | |
| Windows-1253 | Greek | |
| ISO 8859-8 | Hebrew | |
| Windows-1255 | Hebrew | |
| ISO 8859-11 | Thai | Also known as TIS-620 |
| Windows-874 | Thai | Extension of ISO 8859-11 |
| utf-8 | Unicode | |
| utf-16 | Unicode | |
| Shift-JIS | Japanese | |
| ISO-2022-JP | Japanese | |
| EUC-JP | Japanese | |
| Big 5 | Chinese | |
| EUC-CN | Chinese | Also erroneously known as GB 2312 |
| HZ-GB-2312 | Chinese | Primarily used in e-mail |
| EUC-TW | Chinese | |
| GBK | Chinese | EUC-CN extension |
| EUC-KR | Korean |
Opera 8 supports bidirectional text as described in Unicode, HTML, and CSS.
Opera 8 fully supports GIF89a, JPEG, BMP, ICO, WBMP and has full support for PNG including alpha channel (degrees of transparency) and gamma support (device independent colors).
Opera 8 supports an extension of SVG 1.1 Tiny that includes opacity, font handling, and animation.
Need help? Hit F1 anytime while using Opera to access our online help files, or go here.