DOM の getAttribute / setAttribute メソッドは DOM Level 1 から定義されているメソッドで、MSDN Library によれば IE はバージョン 4 からサポートしています。しかし、IE での element.getAttribute(name) / element.setAttribute(name, value) というのは、基本的には JavaScript における element[name] / element[name] = value のシンタックスシュガーでしかありません。ですから、element.setAttribute("innerHTML", "foo") とすると、element の属性には何の変化もないが element の内容が書き換えられるという事態になります。 この (手抜き) 実装が原因で、getAttribute
もずはっく日記(2006年11月) 2006年11月8日 Bugzilla-jpでの連続バグポストの件 初回投稿日時: 2006年11月08日02時10分35秒 最終更新日時: 2006年11月09日07時03分30秒 カテゴリ: Bugzilla-jp SNS: Tweet (list) Bugzilla-jpで同じ文面のバグ報告が3件もあるという事件があった。 普通、連続してほとんど同時にポストされたのであれば単なる多重ポストということが考えられるが、今回は最初の報告が11月2日17時1分、二回目の報告が11月7日10時34分、三回目の報告が11月7日18時0分と、最初は5日間、次も7時間30分も間が空いている。とりあえずこの時点では故意かなんらかの製品のバグなのかそれすら分からないものの、削除というメカニズムを持たないbugzilla上で本来不要なデータが増えるのは好ましくないの
CSSの小技として、<ol>要素に於いて見られるファイヤーフォックス等"もじら系ユーザエージェント"のバグへの対策です。 ファイヤーフォックス等にはどのようなバグがあるのか。(平成19年 6月 1日 更新) 現行のファイヤーフォックス(ヴァージョン 1.5.x.~2.0.x.)等の"もじら系ユーザエージェント"では、ある条件で<ol>要素に於いてバグが発生します。 具体的には、 <ol>要素の孫以下の要素(子要素は必ず<li>要素ですね)にdisplay: list-itemプロパティが与えられた<li>以外の要素が含まれていると、その要素の分だけカウントが増えてしまう。 と言うものです。 後で調べたところ、初期のネットスケープ 6.01(まだファイヤーフォックスの原型さえなかった頃のもの)でもこのバグがある事が分かりました。(平成19年 6月 1日) 具体的なサンプル。 ちょっと分かり難
ここにはWindows版Internet Explorer4.0以降(WinIE)のCSS/DOM実装バグの一覧があります。以下のリストからそれぞれのバグの詳細を見ることができます。 WinIEのCSS実装 WinIE6.0以降に「DOCTYPEスイッチ」が実装されています。DOCTYPE宣言により、W3Cが策定したCSS仕様に従う「標準モード」か、過去のUAに実装されていたCSS仕様に従う「互換モード」で解析・描画が行われます。 DOCTYPE宣言なし: 互換モード HTML3.2以前: 互換モード HTML4 Transtional/Frameset(システム識別子なし): 互換モード HTML4 Transtional/Frameset(システム識別子あり): 標準モード HTML4 Strict: 標準モード XHTML(XML宣言なし): 標準モード XHTML(XML宣言あり)
CSSを使ったレイアウトをする際にWinIE6のバグを回避するための「定石」をまとめておきます。 とくに重要だと思うものは強調してあります。参考としてバグ辞典へのリンクも用意しました(つまり回避法を用いない場合にどんなバグが発現するか)。 フォントサイズ関係 font-sizeは%かpxで指定する。 キーワードで文字サイズを指定すると標準モードと互換モードで文字サイズが変わる(IE6) em単位で指定した値が文字サイズ変更後に正しく反映されない(IE6) ボックスモデル関係 widthと同時に左右borderや左右paddingを指定しない。heightと同時に上下borderや上下paddingを指定しない。 ボックスの幅や高さを算出するときにパディングやボーダーのサイズを含めてしまう (ブロックレベル要素を内包するボックスにはpaddingを指定しない。) 左右ボーダーとパディングを設
もずはっく日記(2005年9月) 2005年9月2日 All your <base> are belong to us 初回投稿日時: 2005年09月02日03時43分12秒 カテゴリ: HTML IE SNS: Tweet (list) IEのめちゃくちゃな処理方法が告白されている。 この話によると、IE6まででは、base要素が出現すると、空要素にも関わらず(しかもhead要素内にしか出現できないにも関わらず)、それを開始タグとして、終了タグを"適切に"補完し、そのbase要素の影響すべきリンク全体がbase要素の子孫要素となるようにし、リンクは、自分に最も近い祖先のbase要素を参照していたというのだ。(base要素がhead要素内にあった場合は、body要素の親をbase要素とするらしい。詳しくはCode-Only: BASE tag changes in IE 7 with
このHTML文書には、HEAD要素内に<base href="http://www.yahoo.co.jp/">が存在します。 Internet Explorerにて、document.body.parentNode.nodeName、つまり、DOMツリーにおける「BODYの親」となっているNodeの名前をアラートしてみましょう。 document.body.paretNode.nodeName DOMをまともに実装したブラウザなら、「HTML」とアラートされるはずです。これは定説です(素)。ええもちろんHEADタグを省略なんかしてません。省略してたからといってどうというわけではありませんが。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く