WinIEは、未知の要素を空要素として扱う。ただし、開始タグと終了タグがそれぞれ個別の空要素になる。
<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
- FOO
- #text
- BAR
WinIE6.0
- FOO
- #text
- /FOO
- #text
- BAR
- #text
- /BAR
abbr要素とrb要素はW3CのHTMLやXHTMLの勧告で定義されている要素ですが、WinIEでは未知の要素として扱われます。空要素として扱われる結果、rb要素に背景などのスタイルが効かない現象やabbr要素のtitle属性の値がツールチップで表示されない現象などが発生します。
WinIE6.0で不具合の発生を確認しました。