フレーム・インラインフレーム

[新着] Webテンプレートを仮オープンしました



0   名前: COCO : 2006/05/08(月) 01:23  ID:57wDyd5I
インラインフレームを使用しようと思っているんですが、古いPCでは表示されないと書かれていました。古いPCではどのように表示されてしまうんでしょうか。どのPCでも表示されるようにするには、やはり普通にフレームを使うしか無いんでしょうか。
また、フレームを5つほど使う場合って、やはりPCによっては重くなったり表示されなくなったりするんでしょうか。
フレームを多用する場合とインラインフレームを使う場合だと、どちらの方が観覧者にとって見やすいものとなりますか?
お答えお待ちしております。

1   名前: S ◆GiqtoOP7U. : 2006/05/08(月) 01:23
 Frameset文書型宣言によるフレームだろうと、iframe要素だろうと、使いにくいことには変わりがないのだけれど。
 ちなみに、OSというよりはUA(ユーザーエージェント)が対応しているかしていないかだろう。>フレーム表示の可否
#古い資料だけど、どんなUAがあるのか興味があったらご参考に:http://www.cyanworks.net/archives/browsers/

参考)
http://www.h3.dion.ne.jp/~roktal/pasocon/frame.html
http://car.s35.xrea.com/better/frame.php
http://lan.rgr.jp/essay/frame
http://members.jcom.home.ne.jp/jintrick/Personal/no_frames.html
http://www.usability.gr.jp/alertbox/styles_vs_frames.html
http://www.usability.gr.jp/alertbox/9612.html
http://members.jcom.home.ne.jp/pctips/www/knowledge/Web.html

#「フレーム 否定」で検索すると他にも色々と見つかる。

2   名前: Z ◆XTzyosZXcL : 2006/05/08(月) 01:23  ID:v5nGHgzA
>>古いPCではどのように表示されてしまうんでしょうか。
 IFRAME要素の場合、非対応のユーザーエージェントではsrc属性で読み込ませている文書ではなく、IFRAME要素の中身が表示されます。したがって、非対応環境を考えるとIFRAME要素は空ではなく、何かしらの代替内容を記述する必要があります。

参考)
http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/present/frames.html#h-16.5
http://www.w3.org/TR/1999/REC-html401-19991224/present/frames.html#h-16.5

 また、Frameset文書型宣言によるフレーム定義ファイルにおいては、非対応のユーザーエージェントではNOFRAMES要素の内容が表示されます。よって、NOFRAMES要素が存在しないか、代替内容となっていない(「フレーム対応のブラウザでご覧ください」のメッセージしかないなど)のは問題でしょう。

参考)
http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/present/frames.html#h-16.2
http://www.w3.org/TR/1999/REC-html401-19991224/present/frames.html#h-16.2
http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/present/frames.html#h-16.4
http://www.w3.org/TR/1999/REC-html401-19991224/present/frames.html#h-16.4

 どちらの場合においても、>>1で提示されている資料のように、フレームについては色々と問題がついて回るためお奨めはできません。
 使う場合はこれらのことを踏まえた上で使ってください(せいぜい2分割か3分割までが限度だと思います)。

参考)
http://nekoshiki.fc2web.com/guidline/guidline.html#gdln38

3   名前: 神崎 : 2006/05/08(月) 01:23
フレームはIE3、NN2あたりから、
インラインフレームはIE4、NN4からだったと思います。

通常は、<noframes>の中に書かれた内容が表示されます。
インラインフレームは
<iframe src="">この部分が表示されます</iframe>

> どのPCでも表示されるようにするには、やはり普通にフレームを使うしか無いんでしょうか。
もしフレームに対応していない古いブラウザにも対応させようとするのなら、
フレーム未使用が良いのではないでしょうか。
(HTMLのバージョンはHTML3.2で良いと思いますが、、、
さらに対応環境を増やすなら、HTMLではなく、プレインテキストがベストです。)

なお、一部の古いブラウザは文字コードのUTF-8に対応していませんので、
日本語を扱うならShift_JISかEUC-JPが良いと思います。

> フレームを多用する場合とインラインフレームを使う場合だと、どちらの方が観覧者にとって見やすいものとなりますか?
フレーム未対応ブラウザで見る場合は、<noframes>の内容や、フレーム内に表示する各HTMLファイルのリンクがちゃんと書かれているか、
また、適切なフレームへのリンクがされているかによって、見やすさは違います。
フレームを使っているからみやすいのではなく、フレームを「どのように」使うかによって、見やすさが変わります。

index.html
<frameset rows="2" cols="*">
<frame src="menu.html">
<frame src="main.html">
</frameset>

と書かれている場合、
フレーム未対応ブラウザや検索サイトから来た人がmain.htmlだけを表示した場合、
main.htmlが、ほかのページへのリンクはもちろん、メニューも表示されない独立したファイルになってしまわないように、
menu.htmlへのリンクをつけておくか、メニューに相当するリンクを書いておくと良いと思います。

フレーム未対応ブラウザと言うよりも、検索サイトなどから直接フレーム内の1ページに入ってくる人の方が多いと思います。

フレーム未対応ブラウザの対応は、
Lynx というブラウザで確認すると分かりやすいと思います。
WindowsとLinux/FreeBSDなどで動きます。たぶんMacでは無理、、、?

余談になりますが、
翻訳サイトなどを通じてアラビア語など右から左に向かって書く言語で表示させることも考慮するなら、
align属性やスタイルシートのfloatで左寄せ・右寄せしたり、positionで位置を指定するのはおすすめしません。
また、margin-leftやmargin-rightも使い方によっては表示が崩れます。

4   名前: Z ◆XTzyosZXcL : 2006/05/08(月) 01:23  ID:v5nGHgzA
>>(HTMLのバージョンはHTML3.2で良いと思いますが、、、
 意外に知られていないことですが、日本語(全角かな文字)が扱えるHTMLのバージョンはHTMLi18(HTML2.x)とHTML4.0、HTML4.01で、HTML3.2は外れています(^^;
 そして、HTMLi18(HTML2.x)はobsoleteされているため、日本語(全角かな文字)を扱うにはHTML4.0以降(またはXHTML1.0、XHTML1.1)を使うということになるでしょう。

参考)
http://www.kanzaki.com/docs/html/htminfo-ex1.html
http://members.jcom.home.ne.jp/pctips/history/Web.html
http://www.scollabo.com/banban/term/history.html

5   名前: COCO : 2006/05/08(月) 01:23  ID:57wDyd5I
お答え有難うございます。
フレームを使うことはあまりいいことではなかったんですね^^;
でも、どうしてもフレームを使うレイアウトが良かったので、フレーム未対応ブラウザ用にページを作りました。
メニューによっては4分割にまでなってしまうんですが、やはりそれは重くなる原因なんでしょうか。
あと、できればページの上下に余白を設けたいんですが、それにはやはりフレームを使うしかないのでしょうか。

6   名前: Z ◆XTzyosZXcL : 2006/05/08(月) 01:23  ID:v5nGHgzA
>>やはりそれは重くなる原因なんでしょうか。
 A文書というフレーム定義ファイルにB文書やC文書などのリソースを読み込ませて一見一つのファイルであるかのように見せかけるのがフレームですので、当然重くなる原因となります。
#提示済みの資料でもその辺りの話が書かれたものがあるはずですが(^^;

7   名前: Pid ◆byEkK9OALr : 2006/05/08(月) 01:23
>>5
フレームの問題というのは,製作者が代替内容をきちんと書かないことによって生じる問題が半分,ブラウザがフレームをどう実装しているか(たとえば印刷しにくい,ブックマークしにくい,リロードしにくい,いくつもページを読み込むので遅い)の問題が半分です。

>>3 で言及されているように,どのようにフレームを使っているかが重要なのであり,「きちんと使いさえすれば」閲覧者の負担は軽減できます。むしろ,フレームは製作者の負担の方が大きいはずです。

> ページの上下に余白を設けたい

CSS で調節します。と言うか,フレームはデザインには全く不向きだと思います(私はフレーム枠を常に表示させるよう設定していますので,正直見苦しい (^^;))。


>>3
> さらに対応環境を増やすなら、HTMLではなく、プレインテキストがベストです

それだとハイパーリンクできないかと。

また,HTML マークアップの原則は文書の構造化であり,そのメリットの一つは機械処理のしやすさにあるわけですから,プレーンテキストの方が「対応環境が多い」とは一概に言えないと思います(プレーンテキストにおける形態素解析の大変さを考えると……)。

一覧へ戻る