フレームなしで作りたいのですが

[統計] HTMLからXHTMLへの移行を進めていますか?



0   名前: lota : 2006/10/18(水) 14:27  ID:XHIe/xcN
【何をしたいのか】
フレームなしで、左側のメニューをクリックすると、右側に表示されるという方法を知りたいです。

【現在の状況】
スタイルシートの基礎を勉強中です。
フレームであればtargetですが、メニューのリンク先を「どの領域に表示させるか」の方法が
よくわかりません。概念がわかっていないというか・・
参考になるサイトなどありましたら教えてください。

1   名前: モノ ◆7YMtX/NYmu : 2006/10/18(水) 14:27  ID:im8zfbtv
とりあえず、フレームを使用しないのであれば、target(属性)の概念はないと思っていいでしょう。

たとえば、
ページa.html
→メニューのリンク(b.html,c.htmlへのリンク)
→サイト内で最初に表示されて欲しい内容
といった構成になっているとしたら。
ページb.html
→メニューのリンク(b.html,c.htmlへのリンク)
→b.htmlに表示されて欲しい内容
といったように、メニューをa.htmlと同じ場所に配置すれば
メニューの部分は変わらず、内容の部分だけが変化したように見えます。

アドレス欄に表示されるURLは変更したくない、とか、
ページごとでなく、内容の一部分に対してリンクさせたいとか、
そーゆーことをお望みだとするとHTMLだけでは実現が不可能です。
Javascriptを使うとかサーバーで処理する必要が出てくるでしょう。

私の書いたことがよくわかんないな、というときは、
今現在、どのようにして実現しようとしており、
どこまでできて、その状態のどういうところが期待するものでないのか、
具体的に提示すると、わかる方から具体的な回答を得られるでしょう。

2   名前: モノ ◆7YMtX/NYmu : 2006/10/18(水) 14:27  ID:im8zfbtv
訂正

>ページb.html
>→メニューのリンク(b.html,c.htmlへのリンク)
>→b.htmlに表示されて欲しい内容

ページb.html
→メニューのリンク(a.html,c.htmlへのリンク)
→b.htmlに表示されて欲しい内容

3   名前: アヤ : 2006/10/18(水) 14:27  ID:I/L72zbC
モノ様の返信で問題ないようでしたら、以下は無視してくださって結構です。

これは、いわゆる「擬似フレーム」というものに該当すると想像しました。
以下のスレッドに説明があります。
例えば、左メニューは固定のまま、右の内容に関する部分だけスクロールさせたいなどの場合に有効です。

スレッドNo.2575
フレームを使わないで 横スクロールが一部だけできるようにする
http://www.tagindex.com/cgi-lib/q1bbs/patio.cgi?mode=view&no=2575


4   名前: lota : 2006/10/18(水) 14:27  ID:XHIe/xcN
モノ様
ご回答ありがとうございます。
モノ様のおっしゃる方法は、すべてのhtmページの同じ位置に同じメニュー(目次)を載せる、
ということでよろしいでしょうか?→A

アヤ様
ご回答ありがとうございます。
擬似フレームについて、こちらのスレッドと、他のサンプルページなどを拝見しました。→B

・Aの場合は、スクロールするとメニューも同時にスクロールする
・Bの場合は、内容のみスクロールできる
という違いがあり、どちらにしてもメニュー変更時はすべてのhtmページを
修正する必要がある、ということでしょうか?




5   名前: モノ ◆7YMtX/NYmu : 2006/10/18(水) 14:27  ID:im8zfbtv
>すべてのhtmページの同じ位置に同じメニュー(目次)を載せる

その通りでございます。

Aの場合でもBの場合でもそういうことになります。
(私の場合でもBを含みますけども)

ローカルで、ツールを使用して、
複数のファイルの特定の部分のみいっぺんに置換する、
という処理を行う方法もあります。

また、サーバで使用が許可されているのであれば、
SSIやPHPのincludeや他の技術を用いて、
もう少しラクに実現できるかもしれません。

6   名前: lota : 2006/10/18(水) 14:27  ID:XHIe/xcN
モノ様

再度、すばやいご回答感謝致します。

「ローカルで、ツールを使用して、
複数のファイルの特定の部分のみいっぺんに置換する、
という処理を行う方法もあります。」

とは、具体的に教えていただけますでしょうか?
その方法の記載のあるサイトがありましたら紹介していただけますか?

7   名前: モノ ◆7YMtX/NYmu : 2006/10/18(水) 14:27  ID:im8zfbtv
とりあえずこういうのがありますよ、ということで。
http://www.shoshinsha.com/hp/tools/substi.htm

#私はそういったツールを使用しませんので、
個々のソフトについての評価はしません。

8   名前: はな : 2006/10/18(水) 14:27  ID:/usM/g/9
インラインフレームとテーブルを組み合わせれば、作れると思います。
自分は、この方法を使ってますよ。
自分は、この方法が楽だと思います。
フレームを何個も作らなくていい。
スクリプトを使わずできる。
同じHTMLファイルすら何個も作らなくて済みます。
以前ほかの支援サイトで質問をしたところこの方法を教えてもらいました。
やり方は、人それぞれですね。

9   名前: モノ ◆7YMtX/NYmu : 2006/10/18(水) 14:27  ID:im8zfbtv
>>8 はなさん
インラインフレームに対応していない環境への対応はどうしましょう?
(インラインフレームってフレームじゃないのかしら)

結局iframeの中に表示させるためのファイルは
表示させるページの数だけ作成しなくてはいけないですよね。
私やアヤさんの提示した方法と、ファイルの数は変わらないわけです。
むしろはなさんの方がファイルがひとつ増えるのかな?
(iframeの中に最初に表示させるファイルが必要だから)

私やアヤさんの場合
・index.html
・a.html
・b.html

はなさんの場合
・index.html
・iframe.html(フレームの中に最初に表示させたいファイル)
・a.html
・b.html
最初にa.html(b.html)を表示させるとしても、それならindex.htmlは不要ですね。
(a.htmlがindex.htmlになればいいわけで)

私の解釈が間違っているのであれば、
私も知りたいので、
>同じHTMLファイルすら何個も作らなくて済みます。
の具体的な方法をぜひ教えてもらえませんか?

#あ、ページ内リンクを使うといいのかな。

10   名前: はな : 2006/10/18(水) 14:27  ID:/usM/g/9
それは、そうですね。
モノさんの言うとおりです。
インラインフレームだと、たとえば左側に目次、
右側にインラインフレームの中身を表示したとしても、
携帯やフレーム不対応ブザウザでは、目次のほうだけ表示されるので、対応できます。
携帯サイト(PC共用のため)でフレームを使いたい。
フレームに対応してないブザウザに対応したい。
方にインラインフレームを使った方法がいいと聞いたことがあります。
表示されないことを逆手に方法であるといえます。


11   名前: モノ ◆7YMtX/NYmu : 2006/10/18(水) 14:27  ID:im8zfbtv
誤解されたら(主に私が)困るかもしれないのでちょっとだけ
>フレームを何個も作らなくていい。
>スクリプトを使わずできる。
私やアヤさんの提示した方法でもそうです。
スクリプトはともかく、フレームをそもそも使ってないですから。

もし、私が提示したSSIなどの方法を指して
「スクリプト」とおっしゃっているのであれば、
それは必須ではありませんのでスクリプトも使用しません。

で、質問の本題とは離れたので、はなさんへの返信は移動先で行いました。
http://www.tagindex.com/cgi-lib/bbs/patio.cgi?mode=view2&f=146&no=169

一覧へ戻る