Home > Windows > Opera > ver.9 Under 未知の要素を空要素として扱う

未知の要素を空要素として扱う

文書のMIMEタイプがtext/htmlであるときは、HTML勧告で定義していない要素(XHTML1.1のルビ関連要素など)を無視する空要素として扱う。このため、HTML文書ではこれらの要素にスタイルを指定しても無視される。

例示

<script type="text/javascript">
<!--
function list() {
    var src = document.getElementById('source');
    var nds = document.getElementById('nodes');
    for (var i = 0; i < src.childNodes.length; i++) {
        var litem = document.createElement('li');
        litem.appendChild(document.createTextNode(src.childNodes[i].nodeName));
        nds.appendChild(litem);
    }
}
// -->
</script>

<p id="source"><foo>1</foo>2<bar>3</bar></p>
<ol id="nodes"></ol>

HTMLで定義されていない要素fooとbarを含むp要素の子ノードのリストをol要素に書き出しています。

実際の表示については検証ページをご覧ください。

実行結果

Netscape7.1、Opera7.11

  1. FOO
  2. #text
  3. BAR

Opera7.23

  1. foo
  2. #text
  3. #text
  4. bar
  5. #text

補足

Opera7.2以降は文書のMIMEタイプを厳密に判断するので、XML系のMIMEタイプ(例:application/xhtml+xml, application/xml, text/xml)を指定した文書でなければHTML勧告外要素のスタイル指定が反映されません。従って文書の記述がXHTML準拠であるとしても、MIMEタイプがHTMLのものであればHTML勧告外要素へのスタイル指定は無効です。

修正状況

  • Opera7.23の標準モードと互換モードで現象の発生を確認しました。
  • Opera7.03、Opera7.11でこの現象は発生しないようです。

Home > Windows > Opera > ver.9 Under 未知の要素を空要素として扱う

Search
オススメ書籍
Feeds

Return to page top