• ベストアンサー

フレームを使うべきでしょうか?

たとえばフレームでページをわけて左側のページのリンクをクリックしたら右側のページに表示させるみたいなことができますよね。 それと似たような感じでリンクをクリックしたときにページ内のフォームというかボックス(400*400くらいの四角い範囲内)にそこのリンク先のページを表示させたいのですが、この場合は、ページの上下左右をフレームで分けて、表示させたい部分の四角を作らないといけないのでしょうか? 文章だけだと表現しずらいのですが、回答おねがいします。わかりづらい点は質問していただければ補足させてもらいます。 あとホームページ作成は、タグとスタイルシート使ってやろうと思います。スタイルシートはまだまだ勉強不足ですが。

  • sin11
  • お礼率53% (145/270)
  • HTML
  • 回答数5
  • ありがとう数16

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

  • ベストアンサー
noname#199778
noname#199778
回答No.1

インラインフレームで対応できると思います。 古いブラウザには、インラインフレームに対応していないものもありますが、最近のブラウザではサポートされていますので、使えると思いますよ。 参考URLなども参照してみてください。

参考URL:
http://tohoho.wakusei.ne.jp/html/iframe.htm,http://tohoho.wakusei.ne.jp/www.htm

その他の回答 (4)

noname#4886
noname#4886
回答No.5

言葉足らずだったようなので補足します。 400×400くらいの範囲に表示させるということだったので、 わざわざ別ページにするほどの内容量ではないのではと考えて「overflow」について書いてみました。 また、「visibility」を使うことで切り替えも可能です。 javascriptを使う必要がありますが。 ただ、やはり他の方が言うようにインラインフレームが一番良いでしょうが、色々と工夫することがとても勉強になるので、あえて難しい手段を選ぶのも良いのではと思います。 再度、すみませんでした。

sin11
質問者

お礼

回答くださった方々ありがとうございました。 なんとかそれらしくつくることができました。

noname#199778
noname#199778
回答No.4

あの、再度失礼します。 なんだか情報が混乱してきているようですので… 質問では、通常のページの中に四角いフレームを用意して、そこに別のHTMLファイルを読み出したいと言うことですよね? このケースでは、スタイルシートで対応することはできません。 スタイルシートでは、特定の要素に対して、そのボックスの表示サイズを指定した上でoverflowプロパティをscrollに指定することで、スクロールバーのついたボックスとして表示させることはできますが、別のHTMLファイルをページ内に組み込むことはできないと思います。 なお、蛇足ですが、「overflow: auto;」と、overflowプロパティをautoに指定した場合は、大抵のブラウザではスクロールとして表示しますが、基本的にブラウザによって表示方法が左右されるので、場合によっては意図した表示にならないケースもあり得るでしょう。 ご質問のケースではインラインフレームを使うことで対応するのが良いと思います。 インラインフレームのソースについては、 <iframe src="***.html" name="***" width="400" height="300">インラインフレームに対応していないブラウザに対するテキスト</iframe> このような感じに書きます。 srcは初期状態で読み込むHTMLファイル、nameはフレーム名、widthとheightはインラインフレームの表示枠のサイズ、<iframe></iframe>の中身は上記のように、インラインフレームに対応していないブラウザで開かれた場合に表示されるメッセージ類を書き込みます。 なお、このインラインフレームをもつ親ページから、インラインフレーム内にページを読み出す方法については、JavaScriptを使わない方法もあります。 このケースは、通常のフレームを使ったページで別フレーム内にページを読み出す指定と同じように、 <a href="***.html" target="インラインフレームにつけたname">リンク</a> と、インラインフレームにつけたnameをターゲットに指定してリンクを張れば良いです。 参考まで。 たびたび失礼しました。

noname#4886
noname#4886
回答No.3

インラインフレームを使うのが無難ですが、 勉強も兼ねてスタイルシートの「overflow」を 使ってみるのはどうでしょうか。 インラインフレームは2つのHTMLファイルが必要になりますが、 「overflow」なら1つのファイルでフレームのような 効果を出すことができます。 overflow:auto; width:100px; height:100px; とすれば、100×100の表示領域を作ることができます。 widthは横幅、heightは縦幅です。 幅を設定しない場合は可能な分だけ広がります。 この設定をDIV要素に適用して、表示させたい内容を DIV要素で囲めば良いだけです。 ただし、表示領域よりも大きな画像やサイズを指定したテーブルがあると、 指定した幅を無視して広がってしまいます。 実際にやってみると感じがわかると思います。 対応ブラウザはIE4.0以上、ネスケ6以上です。 ただし、DIV要素以外に適用した場合や、overflowの 設定を auto 以外にした場合には、無視されることも あるので注意です。 こんな方法もあるという、参考までに。

noname#10926
noname#10926
回答No.2

インラインフレームにリンクページを表示する場合は下記の参考URLを参照ください。 Javascriptを使うので少し難しいかもしれませんがコピペすれば簡単ですね。 フレームを使用する場合は「表示させたい部分の四角を作らないといけない」ということはありません。 分けたフレーム自体が表示させたい部分になるからです。 とりあえずこんなところでお勉強。 http://www.openspc2.org/ http://tohoho.wakusei.ne.jp/ http://www.sky.sannet.ne.jp/masapine/homepage/index.html http://www.icc.aitai.ne.jp/~ja2dpb/

参考URL:
http://www.openspc2.org/reibun/javascript/frame/005/index.html

関連するQ&A

  • フレームページへのリンク

    トップページ(フレームなし)から、フレームページへのリンクがうまく表示されません。 トップページのリンクボタンをクリックすると、左側フレームのメニューは表示されますが、右側の内容のページが「Not Found」で表示されません。 が、表示されたフレーム左側のメニューをクリックすると表示されます。 トップページから、左右両方表示させるのにはどうすればよいのでしょうか? よろしくお願いいたします。

    • ベストアンサー
    • HTML
  • Frameを使わないホームページの作成方法

    <frame>タグで、画面を分割していたWebページを、<frame>タグを使わないで書きかえたいと思います。 <table>タグやスタイルシートを使って書き換えようと思い、いろいろ調べたのですが、分かりませんでした。 デザインは画面左側にメニューがあり、右側にそれぞれの内容ページが表示されるよくあるパターンです。 <frame>タグの場合、別にHTMLファイルを作りメニューに追加してそのファイルを書き換えれば良いですが、<table>タグを使う場合や、スタイルシートを使う場合にはどうすればいいのでしょうか? また、メニュー項目が増えたときに1つのファイルの書き換えですむようにはできますでしょうか? もし、お分かりの方がいらっしゃいましたら、サンプルコードとあわせて 教えていただけないでしょうか? よろしくお願いいたします。

  • フレームで分かれたページへのリンク

    フレームで分割されていないページからフレームで分かれているページへリンクしたいのですが、そのときにリンク先によりフレームに表示されるページを指定したいのですがうまくできません・・・どうしたらいいのでしょうか? たとえば TOPページからリンクしていくと左側のフレームへメニューで右側には指定されたリンク先のページが表示するように。なのでクリックされたリンクが変わればそのページも違うページが表示されるようにです。 どうかよろしくお願いします。

    • ベストアンサー
    • HTML
  • フレーム内リンク→フレーム外リンクにするには?

    あるサイトの検索機能を職場のホームぺージに組み込みました。それ自体は許可されているのですが、フレーム内のリンクは許可されていません。 ところがわたしのホームページは2フレームに分け、左側が目次、右側にページが表示されるというよくあるパターンです。目次の「リンク集」をクリックすると右フレーム内に検索機能のページが表示されるのですが、検索結果が表示されるのも同一の右のフレーム内になってしまいます。これでは違反になってしまうので、検索結果を新しいページに表示させたいのです。 検索用のタグは「ヤフーキッズ」から配布されているものを自分のホームページのソース内にコピーしました。作成はホームページビルダー8です。タグについてはほとんど分かりません。 できましたら初心者なみに教えていただけると助かります。

  • ワンクリックで二つのフレームを動かしたい

    こんばんは。 今、frameを使ってページを左右に分けています。 左がleft、右がrightとしていますが、左側のリンクをクリックして、左右のフレームの内容を目的のページに移動させることは出来ますでしょうか? イメージとしてはしたの通りです。 1.左側の「キャンディの作り方」をクリック。 2.左側のフレームを「candy.htm」に移動。 3.右側のフレームを「candytop.htm」に移動。 手元にある本で調べたのですが、わからずに質問させていただきました。C言語とマクロは少しわかりますが、Javascriptはまだわかりません。HTMLだけで出来ますでしょうか? よろしくお願いします。

    • ベストアンサー
    • HTML
  • ホームページビルダーのフレームのトップページの表示がおかしい。

    ホームページビルダー11で3分割のフレームページをつくりました。トップページの上や左側のフレームからのリンクをクリックすると、右側のフレームに表示されるのですが、トップページをクリックすると右側のフレームに3分割されたトップページが表示されてしまうのです。 どうしたらよいのかお分かりになる方教えていただけますようお願いいたします。

  • フレームでリンク先を2つ指定できますか?

    左側にインデックスをつけて右側は上下分割し、左側のリンクをクリックすると上下別のページをセットで表示できますか? ソフトはワードかフロントページです。

    • ベストアンサー
    • CSS
  • フレーム分割したページの表示について

    教えてください! 左右にフレーム分割したページで 左側にリストボックスを設置してコンテンツを作り、右側に選択したものを 表示させるようにしているのですが、 表示された時、右側のページで1度クリックしないと(アクティブにしないと?) その状態でホイールを回すとコンテンツが次々と変わってしまいます。 1度確定(クリック)しなくても、下にページをスクロールする方法はありますか? たとえば、リストボックスの隣によく”GO”ボタンを見ますが あれも一つの解決方法でしょうか? お願いします(_ _)

    • ベストアンサー
    • HTML
  • frameタグのトップページ指定

     左のフレームのリンクをクリックすると 右のフレームに反映されるようにしています。 しかし一番最初に表示されたとき右側のフレームページには エラーページが表示されます。 どうすればいいでしょうか? 私のタグ辞典には載っていませんでした。

    • ベストアンサー
    • HTML
  • フレームの右側に表示。

    フレームの右側に表示。 フレームを使ったHPを作っているのですが、左右に分けたフレームの 左側にリンクを貼って右側に表示したいのですが、 どうしても上手く出来ません。 フレームのやり方を検索してその通りにやってみたのですが、 いつもなぜか新窓がでます。 新窓が出ないようにしたいのですが、出来るでしょうか? HPを作るのも初めてなのでこういった作業はしたことのない初心者です。 初心者にも分かりやすく教えていただけるととても助かります。

専門家に質問してみよう