Opera 6 でサポートされるウェブ仕様
このページは Opera の Linux、QnX、Windows バージョンに当てはまります。
HTML support | CSS support | XML support | WML support | ECMAScript support | DOM support | Networking support | Text and internationalization | Graphics support
Opera HTML サポート
Opera 6 は以下の例外を除き、HTML 4.01をサポートします:
固有のイベント属性
以下の属性はサポートしていません:
option要素の全てのイベント属性ondblclick
Form 要素
以下の Form 要素はサポートしていません:
buttonの視覚効果labellegend
以下の Form 属性はサポートしていません:
acceptaccept-charsetfor
Table 要素
Opera は HTML3.2 の全ての Table 要素をサポートしています (例: table, caption, tr, th, td). Opera は tfoot プロパティを処理します(常にテーブルの下部に表示されます)が、その他の方法では、Opera では新たな HTML 4.01 要素(col, colgroup, thead, tfoot, tbody)や属性(abbr, axis, char, charoff, frame, headers, rules, scope)はサポートされません。また、Opera はグループ化を行う要素(tbody, tfoot, thead)にスタイルを割り当てることはできません。
その他の問題
a要素は、coords,charset,hreflang,shapeに帰します。frameborder属性はサポートしていません。- 双方向アルゴリズム上書き要素
bdoとdir属性。lang属性はサポートしていません(例:q)。 accesskey,tabindex属性はサポートしていません。- Opera は
objectをサポートしていますが、align,classid,codebase,codetype,standby属性はサポートしていません。 プラグインにはembedが用いられます。 - Opera は
appletのalign,archive属性をサポートしていません。 rel="stylesheet" を除き、Opera はlink要素の属性を特にサポートしていません。同様に、meta要素のscheme属性、およびhead要素のprofile属性もサポートしません。- 推奨されない
hr要素のnoshade属性は効果がありません。compact属性も同様です。CSS を使用してください。 - Opera は
script,noscriptに関して、HTML 4.01の規格に従っています。 もし何らかの script 要素が実行できない場合、それ以降すべての noscript 要素を表示します。
CSSサポート
Opera 6 は全てのCSS1 をサポートします。
Opera 6 は以下の例外を除く <a1>CSS2</a1> をサポートしています:
- Opera はビジュアルブラウザであるため、Aural CSS をサポートしていません。
- 以下のプロパティ:
clip,cursor,direction,font-size-adjust,font-stretch,marker-offset,marks,text-shadow,unicode-bidi, すべてのoutlineプロパティ。 - CSS2 上の
list-style-type。 - 次のプロパティ/値の組み合わせ: "display: marker", "text-align: <string>", "visibility: collapse", "content: <url>", "overflow: scroll", "overflow: auto".
- 名前つき page (セクション 13.3.2 にて解説)
- "@font-face" コンストラクト
以下の例外を除きすべての CSS2 セレクタをサポートします:
- :first-child, :focus, :lang
- 他のセレクタの前に置かれる pseudo-classes との組み合わせ
Internet Exploler および Netscape との、スタイル上における相違点
Opera ブラウザをご利用になる場合、ページによっては他のブラウザ上とは異なって表示されることにお気づきになるかもしれません。 たいていの場合、相違は表示中のページにおけるエラーにより発生します。 ほとんどの Web ページは、Opera がサポートしている W3C の規格に沿って記述されていません。 Opera は Netscape と Microsoft のブラウザにおけるエラーを修正するため、ある程度までの試行を行いますが、W3C の規格の方が優先されます。Opera と Netscape / Microsoft との間における表示方法の相違の一覧は、下記をご参照下さい。
- Opera における hr の色は、背景属性です。また、Opera は生成された内容と同様に、背景のスタイルもすべてを受理します。 NN4 および IE では、それが前景属性(色)となっています。 なお NN6 では、正しい処理を行っています。(:before と :after の擬似要素とともに生成された内容が使用される場合、Opera と NN6 では相違があります。)
- リンクのアンダーラインについては、Opera および NN6 と、他の古いブラウザとの間において相違があります (アンダーラインの色とテキストの色を分けることができます)。これは CSS2 の text-decoration のルールによるものです。
- IE5 for Windows には、高さ及び幅の処理方法に誤りがあります。このため Opera (ならびに NN6) がより大きく表示されます。 この不具合は IE6 (compliant mode) において修正されています。
- IE5 には配置位置に関連した問題もあります。配置された要素は、含まれている配置済みの要素の一番近くに配置されるべきですが、含まれている要素の一番近くに配置されます。
- 背景イメージのポジショニングは、ウィンドウではなくエレメントボックスに関連しています。
body{background-position: center center}は、ウィンドウの中心ではなくページの中心に背景が表示されます。 - 通常は body 要素に対して margin ( body と head/html 要素の間の空白) ではなく padding を使用します。
- ブロックレベルコンテンツのプレフォーマットに関して、 pre はブロックコンテンツではなくインラインコンテンツに対して適用されます。すなわち、<pre>Pre-formatted<h3>Headline</h3>Not pre-formatted</pre> のようにブロックレベル要素 (headline など) が現れた場合、コンテンツはプレフォーマットされません。NN と IE では、<h3>Headline</h3>Not pre-formatted</pre> はやはり表示されません。
- Opera においてフォームコントロールのスタイルを変更できますが、背景色の設定など、フォームコントロールではないように見せるスタイル変更は行えませんのでご注意ください。CSS の仕様ではフォームコントロール装置でスタイル変更が可能であるようにはなっていませんし、OS の UI ガイドラインと違反する可能性があります。弊社では将来この変更をサポートする予定です。
- Netscape 6 は標準規格に関し、Netscape 4 シリーズよりも大きな飛躍を見せています。Mozillaではさらに改善されていると思われます。 Mozilla に関する情報は Mozilla site をご覧ください。
- IE6 における CSS の改良は、Opera の中では既に実行されています。これにより、IE6 の標準モードにおける Web ページの表示形式が、Opera の Web ページの表示形式に非常に近くなっています。詳細は <a1>Microsoft IE6 に関するドキュメント</a1> をご覧ください。
Opera の拡張 CSS 対応表
こちらのユーザサイトでは Opera 5 の対応情報が載せられています: Eric Meyer's Mastergrid
XML の CSS 拡張
Opera 6 では欠落していては表示不能な XML 要素への情報提供を行うために、CSS 風の属性を使用します。3つの拡張プロパティが実装され、ハイパーリンクおよび画像イメージが XML ドキュメントに挿入されるようになります。ほとんどの場合、以下で説明するプロパティよりも XHTML を使って作成した方が良いとされますが、ご参考までに掲載します。
| プロパティ: | -set-link-source |
|---|---|
| 値: | none | attr(<attribute-name>) | content() |
| 初期値: | : n |
| 継承: | No |
| 説明: | このプロパティは 'link' 変数の値を設定し、それにより後に 'opera-use-link-source' プロパティを通じてリンクが生成されます。 |
| プロパティ: | -use-link-source |
| 値: | none | current | next |
| 初期値: | : n |
| 継承: | No |
| 説明: | このプロパティは要素を source anchor に設定し、現在ないし次の "link " 変数のいずれの値を利用するかを宣言します。 |
| プロパティ: | -replace |
| 値: | none | attr(x) |
| 初期値: | : n |
| 継承: | No |
| 説明: | このプロパティは要素が置き換えられるか否かを宣言します。置き換えられる場合、attr() function を用いてコンテンツの URI 情報が見つかった属性を指摘します。 |
さらに、Opera は CSS2 非標準の値 white-space プロパティの white-space: -pre-wrap を許容します。この値は white-space: pre と全く同じですが、例外として、 一行がボックス(containing box)よりも幅が広い場合は、端で折り返されます。 これは、メールのメッセージのような改行が予想できないプレーンテキストフォーマットを取り扱うときにとりわけ便利です。-pre-wrap は他のホワイトスペース設定とは異なり、タブキャラクタを小さな箱のように表示します。
XML サポート
Opera 6 can parse and display XML documents. Content-type が "text/xml" のドキュメントは XML ドキュメントとして処理します。 Content-type が不明の場合には、.xml ファイル拡張子も XML として処理します。
XML と CSS
<a0>XML</a0> ドキュメントを表示するためには、<a1>CSS</a1> スタイルシートが必要です。作成者は処理指示を通じ、 <a2>XML</a2> ドキュメントにスタイルシートを付与することが可能です。 以下は、簡単な例です:
<?<a0>XML</a0> version="1.0"?> <?xml-stylesheet href="shakespeare.css" type="text/css"?>
スタイルシートが存在せず、ページの名前空間が <a0>HTML</a0> に関連付けられていない場合、Opera 8 はドキュメントを表示するため、全ての <a1>CSS</a1> プロパティにおいて初期値を使用します。要素はすべてインラインとなります。また、テキストはすべて同じフォントによって提供されます。
XSL と XSLT
Opera は XSL formatting objects をサポートしません。また、XSLT transformations をサポートしません。サーバ側で変換処理された XML ドキュメントは、他の XML ドキュメントと同様に Opera にて解析されて表示されます。クライアントによる XSL-FO については Formatting Objects Considered Harmful をご覧ください。
XML 名前空間
Opera 6 は XML 名前空間をサポートします。 XHTML 用の名前空間がもっとも頻繁に使用されます。Opera 4 から暫定的に HTML 名前空間 (http://www.w3.org/TR/REC-html40) が認識されるようになっています。Opera 5.1からは XHTML 名前空間 (http://www.w3.org/1999/xhtml) も認識されます。
XHTML サポート
XHTML サポートの方法としては、2つのモードがあります。一つは、content type が text/html のドキュメントの場合、もう一つは、 content type が ttext/xml、application/xml、application/xhtml+xml のドキュメントである場合です。前者のケースではドキュメントは他の HTML ドキュメントと同様に処理されます ( XHTML 1.0, XHTML Basic, XHTML 1.1 の標準的なサポートも行います)。後者のケースでは、XHTML は HTML 要素および属性用にあらかじめ定義された機能を有する XML として処理されます。 XML モードにおいて、Opera には以下の追加の例外があります:
basescriptとイベントハンドラstyle(xml-stylesheet の代わりに使用する)
WML 1.2 support
Opera 6.0 はワイヤレス・マークアップ・ランゲージ(WML)要素をすべてサポートしますが、以下の属性はサポートされません:
accesskey,tabindexselect要素のiname,ivalueinput要素のemptyok,formatimg要素のlocalsrc
WML ドキュメントのレンダリングは、Opera のインストールディレクトリ中にある "wml.css" という名前の CSS スタイル・シートによりコントロールされます。 このファイルを編集した際、変更を適用するには一度 Opera を再起動する必要があります。
ECMAScript サポート
ECMAScript は Java コアを標準化したもので、ECMA standards body を通じて標準化されています。ECMAScript にはブラウザやドキュメントに依存したオブジェクトが存在しません。詳細は こちらのドキュメントをご覧ください。
Opera 5 は ECMA-262 2nd 標準をサポートしています。 これは JavaScript 1.3 と同等の機能を有しています。 以下のアイテムは JavaScript 1.3 のコアサポートの中で Opera 6 には含まれないものです:
- Locale メソッド
- RegExp オブジェクトの完全な実装
- 組み込みオブジェクトの一覧
Opera は ECMA-262 3rd edition をほぼサポートしています。これは Netscape の JavaScript 1.4 コアサポートとおおよそ同等の機能を有しています。
JavaScript 環境: DOM と DHTML
JavaScript 1.3 サポートに次の機能は含まれません:
- イベントハンドラに渡されたイベント変数は JavaScript 標準と一致しません
- iframe の SRC 属性を設定することができません
現在、DOM 2.0 標準に基づいて DOM を処理しています。また、Microsoft の DOM に対する拡張のいくつかも使用してきましたが、これは HTML 要素のスタイル属性を通じて CSS プロパティへアクセスする明白なメソッドであるといえます。ドキュメント構造の修正はまだ可能ではありません(すなわち、HTML 要素の追加や削除を行うことができません)。Netscape の dynamic layer をサポートする計画はありません。 現在、以下に示す絶対座標で指定する HTML 要素のための CSS 属性の取得と設定を行えるようにサポートしています:
visibilitypixelLeft,pixelToppixelWidth,pixelHeightzIndexcolor,background(色の設定のみ)
ドキュメント・オブジェクトにおいて、下記のメソッドをサポートしています:
getElementsByTagName()getElementById()getElementsByName()
HTML要素において、下記のメソッドをサポートしています:
getElementsByTagName()contains()parentNode
Support for JavaScript and JScript Objects
詳細はこちらのドキュメントに記述されています。Opera は上記に記述されている以外の W3C DOM コアをサポートしません。W3C DOM/HTML はサポートされる予定です。W3C DOM/HTML サポートのドキュメントも今後予定しています。
JavaScript と JScript objects のサポートについての詳細
ネットワークプロトコルサポート
OPERA 6 は HTTP 1.0 と HTTP 1.1 を完全にサポートしています。 以下はその一例です:
- 常時接続(単一のコネクションによる複数の要求/応答)
- キャッシュを作らない・キャッシュをディスクに作らないなどのキャッシュコントロール
- Basic 認証。 body 内の認証を除く Digest 認証をサポートします。現在 NTLM をサポートする計画はありません。
- レジュームダウンロード(サーバ側が対応しているとき)
- SSL/TLS サポート (proxy/firewall を含む)
- HTTP, FTP, Gopher, WAIS 用のプロキシ
暗号化: Secure Sockets Layer (<a1>SSL</a1>) バージョン 2 と 3および Transport Layer Security (<a2>TLS</a2>) v1.0 に対応した 128 bit 暗号化(<a0>RSA</a0> 公開鍵方式のみ)をサポートしています。また、<a3>HTTP</a3> (web)、<a4>NNTP</a4> (news)、<a5>POP</a5> ならびに <a6>SMTP</a6> (メール)に対応しています。プライベートキーの生成や証明書のリクエストもサポートしています。
ニュース: 暗号化されたニュースサーバやパスワード付きのニュースサーバをサポートしたシンプルなオンラインニュースリーダー。<a0>MIME</a0> 形式の、もしくはエンコードされていない記事への添付をデコードすることができます。
リジュームダウンロードに対応した FTP
FTP、HTTP 両形式によるダウンロード
テキストと国際化
Opera の Unicode サポート
Opera は Unicode にて指定されたすべての文字上で動作します。 ネットワークから Opera に伝えられたテキストは、すべて Unicode に変換されます。
Opera が Unicode 文字を表示するためには、必要とされる文字がお使いのシステム上のフォントにて利用可能である必要があります。これは比較的古いウインドウズ・システムにおいて問題となり場合があります。 詳細な情報については Unicode fonts for Windows computers をご覧ください。
Opera 6.0 は以下の書記システム関連機能を実行します:
- font-switching
- 使用中のフォントに含まれていない文字を表示するために必要です。
- line-breaking
- 中国語・韓国語・日本語のように、スペースのない文章を表示するために必要です。
Opera は、実行するオペレーティング・システムに依存します:
- character shaping
- Contextual glyph selection, ligature forming, character stacking, combining character support 等。
エンコーディングサポート
Opera は Unicode(UTF-16 ならびに UTF-8) で動作しますが、インターネット上のほとんどのテキストは、Unicode 以外の古めかしいエンコーディング (例えば ISO 8859-1、 windows-1251 、 Shift-JIS 、 EUC-KR ) でエンコードされています。Opera は、使用されるエンコーディングを検知しそれを UTF-16 に変換することで文字データを処理します。これらのページの処理方法に関しては、3つのオプションを用意しています。
- 自動検出
- Opera はページ単位で使用されるエンコーディングを検出しようとします。転送プロトコルによりエンコード名が提供される場合には、そのエンコード名が使用されます。 そうでない場合には、Opera はページ中の charset 宣言を検索します。 これが見当たらない場合、Opera はドメイン名を使用してページが CJK スクリプトかどうか、もしそうであればいずれに該当するかなどを確認し、エンコーディングの自動検出を試行します。Opera はまたUTF-8を自動検知します。
- スクリプトにより自動検出
- ユーザには日本語あるいは中国語のページであると明らかでありながら、エンコードが不明な場合に使用します。Opera はページのテキストに使われているエンコードを分析し、使用されているエンコードを決定します。
- エンコードの上書き
- ユーザがエンコードを指定したい場合に使用します。 転送プロトコルやページのエンコード情報ではなく、指定されたエンコードでページを表示します。
以下の一覧には、Opera が Unicode に加えてサポートするすべてのエンコードが掲載されています:
| エンコード | カテゴリ | コメント |
|---|---|---|
| ISO 8859-1 | ラテン | |
| ISO 8859-2 | ラテン | 東ヨーロッパ言語 |
| ISO 8859-3 | ラテン | あまり使われない |
| ISO 8859-4 | ラテン | サーミ、バルト海沿岸諸国 |
| ISO 8859-9 | ラテン | トルコ語 |
| ISO 8859-10 | ラテン | イヌイット、サーミ、アイスランド語 |
| ISO 8859-13 | ラテン | あまり使われない |
| ISO 8859-14 | ラテン | ケルト語 |
| ISO 8859-15 | ラテン | 8859-1 の代替案 |
| Windows-1250 | ラテン | 東ヨーロッパ言語 |
| Windows-1252 | ラテン | |
| Windows-1254 | ラテン | トルコ語 |
| Windows-1257 | ラテン | バルト海沿岸諸国 |
| Windows-1258 | ラテン | ベトナム語 |
| VISCII | ラテン | ベトナム語 |
| IBM 866 | キリル文字 | |
| ISO 8859-5 | キリル文字 | |
| koi8-r | キリル文字 | |
| koi8-u | キリル文字 | Ukranian version of koi8-r |
| Windows-1251 | キリル文字 | |
| ISO 8859-6 | アラビア語 | |
| Windows-1256 | アラビア語 | |
| ISO 8859-7 | ギリシャ語 | |
| Windows-1253 | ギリシャ語 | |
| ISO 8859-8 | ヘブライ語 | |
| Windows-1255 | ヘブライ語 | |
| ISO 8859-11 | タイ語 | TIS-620 としても知られている |
| Windows-874 | タイ語 | ISO 8859-11 の拡張 |
| utf-8 | Unicode | |
| utf-16 | Unicode | |
| Shift-JIS | 日本語 | |
| ISO-2022-JP | 日本語 | |
| EUC-JP | 日本語 | |
| Big 5 | 中国語 | |
| EUC-CN | 中国語 | GB 2312 として誤認されることもある |
| HZ-GB-2312 | 中国語 | 主にメールで使用 |
| EUC-TW | 中国語 | |
| GBK | 中国語 | EUC-CN 拡張 |
| EUC-KR | 韓国語 |
グラフィックサポート
Opera はアルファチャンネル、ガンマサポートを含む PNG をフルサポートし、および GIF89a、JPEG、BMP、WBMPをサポートしています。
