ページ内リンクが飛ばず困っています。

現象としては以下になります。
・index.htmlのリンクからexample.html#01へ → ×飛ばない
・example.htmlのリンクからexample.html#01へ → ○飛ぶ
・URLを直接打ち込む → ○飛ぶ
確認している環境は、WindowsXPのIE7です。(IE8だと正常に動作します。)
何かご存知の方、ご教授頂けないでしょうか?よろしくお願いします。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2012/05/14 23:43:00
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:maya70828 No.3

回答回数1364ベストアンサー獲得回数139

ポイント100pt

たぶん、名前のつけ方がルール違反です。
ちなみに推奨はid属性です。

name属性を参照
http://w3g.jp/xhtml/dic/a

試しにaタグにname属性とid属性の両方を書いてください。
その際、数字や記号から始まらないように。また大文字小文字も区別されるのでそれにも注意しましょう。名前のつけ方のルールはname属性とid属性共通です。
http://www.tagindex.com/html_tag/link/a_name.html
http://pirkawiki.oarts.jp/index.php?name%E5%B1%9E%E6%80%A7%E3%81%AE%E3%83%8D%E3%83%BC%E3%83%9F%E3%83%B3%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%AB

例を挙げると、

<a name="a1" id="a1">ここ</a>
<h2 id="a2">ここ</h2>
<div id="a3">ここ</div>
<a href="#a1">内容</a>
<a href="#a2">内容</a>
<a href="#a3">内容</a>

こんな感じになります。
解決しなければまた書きます。

id:lily0717

ご回答ありがとうございます。
<h4 id="01">内容</h4>
というような記述をしていたのですが
<a name="a1" id="a1">内容</a>
と変更したことで上手くいきました!
ありがとうございました。

2012/05/14 23:42:21

その他の回答2件)

id:taknt No.1

回答回数13539ベストアンサー獲得回数1198

ポイント100pt

http://q.hatena.ne.jp/1233629961

ホームページのつくりが悪い場合 IE7だと うまくできない場合があるようです。

IE8だと つくりの悪さも吸収してしまうので 問題が 発生しない。

リンクの箇所の記述とか 見直してみる必要があると思います。
というか どのようにしているのか 提示してください。

id:uwao No.2

回答回数180ベストアンサー獲得回数39

ポイント100pt

リンクが正常では無い場合、index.htmlのHTMLに問題があるのかもしれません。
下記でHTMLをチェックすると原因が分かるかもしれません。
http://htmllint.itc.keio.ac.jp/htmllint/htmllint.html

id:maya70828 No.3

回答回数1364ベストアンサー獲得回数139ここでベストアンサー

ポイント100pt

たぶん、名前のつけ方がルール違反です。
ちなみに推奨はid属性です。

name属性を参照
http://w3g.jp/xhtml/dic/a

試しにaタグにname属性とid属性の両方を書いてください。
その際、数字や記号から始まらないように。また大文字小文字も区別されるのでそれにも注意しましょう。名前のつけ方のルールはname属性とid属性共通です。
http://www.tagindex.com/html_tag/link/a_name.html
http://pirkawiki.oarts.jp/index.php?name%E5%B1%9E%E6%80%A7%E3%81%AE%E3%83%8D%E3%83%BC%E3%83%9F%E3%83%B3%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%AB

例を挙げると、

<a name="a1" id="a1">ここ</a>
<h2 id="a2">ここ</h2>
<div id="a3">ここ</div>
<a href="#a1">内容</a>
<a href="#a2">内容</a>
<a href="#a3">内容</a>

こんな感じになります。
解決しなければまた書きます。

id:lily0717

ご回答ありがとうございます。
<h4 id="01">内容</h4>
というような記述をしていたのですが
<a name="a1" id="a1">内容</a>
と変更したことで上手くいきました!
ありがとうございました。

2012/05/14 23:42:21
  • id:Lhankor_Mhy
    補足お願いします。
    ・アンカーはname属性ですか、id属性ですか。
    ・HTML4で、id属性にアルファベットとアンダースコア以外の文字から始まる文字列を適用するのはルール違反だったと思うのですが、実際のコードでも"01"ですか?
  • id:a-kuma3
    手元に IE7 環境があるので、ちょっと試してみたけど、単純な感じじゃなさそう。
    ぼくも数字で始まるハッシュが怪しいと思ったんだけど、
    ○ A タグで name 属性
    ○ A タグで id 属性
    × P タグで name 属性
    ○ P タグで id 属性
    と、予想通りの挙動をする。
    DOCTYPE 宣言で、HTML 4.01 Strict を指定しても、挙動は同じ。

    どうしてだろうねえ。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません