dポイントプレゼントキャンペーン実施中!

webサイトを構築する際に共用部分のhtmlを読み込んで表示させる場合の対応として、インクルードファイルかインラインフレームのどちらかを検討しています。インクルードファイルの場合、サーバの負荷や設定など必要になろうかと思われますが、それぞれ比較した場合のメリット・デメリットを知りたいのですが。また、SEO的にはどうなんでしょう?

A 回答 (4件)

まず、インクルードするのとiFrameを使用するケースは全く別物です。



インクルードの場合、SSI(サーバサイドインクルード)か、CGIやPHPなどのスクリプトにより、サーバ側の処理によりHTMLソース内部にテキストとして出力されます。
そのため、閲覧者からは「それがインクルードである」と認識されません。

iFrameの場合、フレームと同じ原理で別URLのファイルを表示する窓でしかありません。CSSを使用し枠を消すといった事は可能ですが、閲覧者には認識可能です。
また、iFrame非対応のブラウザでは見れませんし、XHTML標準ではiFrameは廃止されているので、今後廃れる可能性もあります。

SEO的に見ても、ソースにテキストとして出力されるインクルードの方が効果が高いと言えます。

インクルードの方がメリットが高くデメリットもありませんが、サーバの仕様によって利用の可否があります。
    • good
    • 0
この回答へのお礼

お返事ありがとうございます。大変参考になりました。
また、回答のなかで“iFrame非対応のブラウザ”と書かれていますが、具体的なブラウザを教えていただきたいのですが。(バージョンにもよると思いますが...)よろしくお願いいたします。

お礼日時:2006/12/04 16:53

できるならincludeを使用することを前提としてなんですが、iframeにもメリットはあります。


必要とするリソースだけ開きたいとき、不要な共用部分を除いてアクセスができる点です。

たとえばこの教えてgooの画面質問の一覧のページだと、
上部と右部分に共用部分が表示されていますよね。
ウィンドウをちょっと狭くしてこのページを見ると、
広告やメニューなどが表示されているために、
スクロールしないと一覧までたどり着けません。
記事の一覧だけ見たいのに、(自分にとっては)不要なメニューや広告まで表示されてしまうのです。
(ブログなんかでよくあるんですけど、
3カラムなのに800pxくらいで幅が固定されていて、
メインであるはずの記事が15文字くらいで折り返されてて読みづらいとか)

翻って、サイトの内容を
すべてiframeの中に表示させるような構成のサイトがありますが、
iframeのサイズが十分でないために、
ものすごく見づらいことがあります。
でも、iframeなので、iframeの中に表示されるはずのリソースに
直接アクセスすることができますし、
そうすると不要なメニューは表示されずに閲覧することができます。
(iframeだけでなく、frameのサイトでも同じ)
ただし、iframeの中に表示されるページまでおかしなことになってると意味ないですが。

個人的にはiframeはおすすめしないし、自分でも使わないです。
でも、includeを使っても、設計しだいで
iframeより不親切なサイトになってしまうかもしれない、
ということも頭の隅に留めておいて欲しいな、と…。
    • good
    • 0

iFrame非対応ブラウザについてという事で、IE2以前にネットスケープ(NN)4以前のほか、盲人用音声ブラウザやi-modeにEZ-webといった携帯でのブラウジングも非対応です。

PC向けサイトならシェア率1%以下の存在となりますが、ごくまれにNN4を使っている人も未だにいます。しかしながら現実的な話をしますと、切ってしまっても何ら問題ない数です。

iFrameは廃れるとも書きましたが、あくまでXHTMLの仕様の流れからあり得る可能性という話で、最もメジャーなGoogleの広告でもiFrameは使われていますので、HTMLという枠の中でなら、現実問題iFrameが無くなる可能性は薄いです。

上記を踏まえた上でも、iFrameはインクルードの代替手段であり、インクルードができる環境ならインクルードを使うことをお勧めします。iFrameのようなスクロール付き窓にするにしても、CSSで出来ますしね。
    • good
    • 0
この回答へのお礼

ご回答いただきありがとうございます。
より詳しい内容で大変参考になりました。

お礼日時:2006/12/05 09:38

趣味でHPを製作している者です


私は今までインクルードファイルという言葉を知りませんでしたので
自分なりに調べてみました。
その結果インクルードファイルとはCSS、JavaScript等を外部ファイル
として作成することを言う様ですよ。
したがって、インクルードファイルとインラインフレーム(iframe)は
様は同じ意味ではないでしょうか?
iframeも外部ファイルを読み込んで表示するものですので。
私のインクルードファイルに関する調べ方が悪かったのでしょうか?
    • good
    • 0
この回答へのお礼

お返事ありがとうございます。ご意見参考にさせていただきます。

お礼日時:2006/12/04 16:55

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!