Firefoxとアンカーとid
例えば以下のような場合、
<a href="#example">リンク</a> <div id="example"> ∬ <a href="">アンカー</a> ∬ </div>
[リンク]をクリックすると、リンク先の <div id="example"> が内包する最初のアンカー[アンカー]がフォーカスされる。
<div id="example"> 内容の先頭と[アンカー]が同時にウィンドウ内に表示されていれば問題は無いが、そうでない場合は、[アンカー]がフォーカスされた状態でその行がウィンドウ内最下部に表示されてしまい、<div id="example"> 内容の先頭が表示されなくなってしまう。
再現環境は Firefox 1.0.6 (Win & Mac)。
IE 6、Safari 2.0.2、Opera 8.5 、そして同じ Mozilla project の一員である Camino 1.0a1 では <div id="example"> 内容の先頭がウィンドウ内最上部に表示された。
これって Firefox のバグなのカシラ?
id属性は、A要素を含むあらゆる要素の開始タグで、アンカーの生成に用い得る。
id属性へのリンクはアンカー <a id="" name=""> を使用して吉。(てゆーか、上記例のように使用することが稀。てゆーか、無いかも)
追記
<a href="#example">リンク</a> <div> <div id="example">ほげ</div> ∬ <a href="">アンカー</a> ∬ </div>
上記のような場合には[ほげ]行がウィンドウ内最上部に表示された。
name 属性を考慮する必要が無ければアンカー <a> でなくても問題無いようだ。