• ベストアンサー

リンクが上手く貼れません!

お世話になります。 Win2K ホームページビルダー6.5を 使用しています。 今日、ホームページの更新をしました。 新しくフォルダ(仮にBフォルダ)を作成し、その中にindex.htmを作成して別フォルダ(仮にAフォルダ)のhtmからリンクするようにしたのですがうまくいきません。新しいフォルダはちゃんとホームページフォルダ(最上位フォルダ)配下にいるのですがどうも認識していない様子・・・。リンクしたいindex.htmをAフォルダ直下に移動するとちゃんとリンクできます。どうすればいいのでしょうか?タグなど難しい事はよくわからず、前任者の作ったホームページをただ修正するような作業しかしていません。 お恥ずかしい話ですが、よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • MRT1452
  • ベストアンサー率42% (1391/3293)
回答No.4

root(最上位フォルダ) ├ A │└ a.htm └ b  └ index.htm という構成で間違いないですね? では。 > リンクしたいindex.htmを > Aフォルダ直下に移動するとちゃんとリンクできます。 と言う事ですので、リンクタグが <a href="index.htm">文字列</a> となっているかと思います (ソースウィンドウで確認してみてください。) href="index.htm"(又は href="./index.htm") は、パスの指定がありませんので、 「同じフォルダの中の」index.htmと いうファイルへのリンクという意味合いです。 ()内の"./"というのは同じフォルダという意味を 明示的に示した記述です。 上記構成の場合にはこの個所を <a href="../B/index.htm">文字列</a> と記述する必要があります。 "../"というのは「一つ上のフォルダ」と言う意味。 ここでは最上位フォルダを指します。 この部分でファイルを探す視点が 最上位フォルダに移動します。 次に"B/"で最上位フォルダの中のbフォルダを探します。 で、その中のindex.htmを指定していることになります。 (分かり難い説明で申し訳ありませんが) これは相対パスという考え方で、 現在いるフォルダの位置から参照の視点を 移動していく記述のしかたです。 自分のサイト内での移動はこの記述が ファイル参照の基本になります。 要は/を区切りにファイルの参照の視点が移動すると 考えてもらえれば良いかと。 例えば、ThinkPad1124さんの記述 <a href="b/index.html>index</a> これは上記構成では失敗します。 参照の視点は最初Aフォルダにあるわけですから、 その一つ上のフォルダに移動しないでBフォルダを 探そうとしています。 AフォルダにはBフォルダはありませんので、 参照失敗となりエラーになります。 上にも挙げていますが、 通常のフォルダやファイルの指定以外に、 ./ : 自分自身のフォルダ ../ : 一つ上のフォルダ という記述の方法があります。 例えば、 root\a\b\c\d\e.htm から root\index.htm にリンクする場合は <a href="../../../../index.htm">文字列</a> となります。 ビルダーの機能ではリンク部分を右クリックして、 リンクのプロパティを利用して、 ファイルの選択をしなおせば良いかと思います。 (注:作業のフォルダ構成が実際のサイトと 同じ構成になっている必要があります。) また、ビルダーは最初、作業用ファイルとして、 作業用のフォルダにリンクをつけるのですが、 保存する際にきちんと相対パスへの変換が出来ずに、 そのまま保存されてしまう場合があります。 <a href="c:///~/ のような感じになっている場合はそのエラーによる現象。 リンクのプロパティで改めて、ファイルを指定してやる必要があります。

noname#12495
質問者

お礼

詳しい説明、ありがとうございました。 スラッシュの前の..にそんな意味があるなんて 初めて知りました。なんとかリンクする事ができました。 ご教授、感謝いたします。

その他の回答 (3)

  • tatou
  • ベストアンサー率33% (2/6)
回答No.3

Bフォルダのindex.htmからリンクするhtmを再度確認してみてください。 >リンクしたいindex.htmをAフォルダ直下に移動するとちゃんとリンクできます。 と、ありますが上記のリンクではいけないのでしょうか? 以下のホームページ参考にしてみてください。

参考URL:
http://s-miki.cool.ne.jp/builder/
回答No.2

リンクの時の情報が違っているようです。おそらく <a href="index.html">index</a> のような形になっているのだと思います。これを <a href="b/index.html>index</a> の形にするとうまくいくと思います。

  • pbforce
  • ベストアンサー率22% (379/1719)
回答No.1

確認事項としては、 フォルダをきちんと指定できていますか? ぐらいでしょうか。 Bフォルダにあるときと、Aフォルダにあるときで リンクの記述が同じだとするとフォルダの指定が間違っています。

関連するQ&A