• ベストアンサー

DOCTYPE宣言のFramesetについて

HTML4.01でFrameset宣言に関してですが、 その名の通りフレームを使ったページに指定すると思います。 このフレームとは<iframe>も含まれるのでしょうか? 現在の閲覧者などを表示するレンタルCGIがあるのですが、 このレンタルCGIもiframeを使っているので、 やはり、 Frameset宣言をするのが正しいのでしょうか?

  • HTML
  • 回答数2
  • ありがとう数3

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

  • ベストアンサー
  • nachi_t
  • ベストアンサー率66% (10/15)
回答No.1

<iframe>は含まれませんので、Framesetで宣言しても無意味です。 Framesetでの宣言は、通常のフレームを使う場合のみにして下さい。 <iframe>の場合は、下記のようにTransitionalで宣言して下さい。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN>

kyanasaki
質問者

お礼

ご解答ありがとう御座いました! iframeは含まれないとの事ですね。 とても参考になりました、ありがとうございます。

その他の回答 (1)

回答No.2

>このフレームとは<iframe>も含まれるのでしょうか? いいえ、含まれません。 >このレンタルCGIもiframeを使っているので、 >やはり、 Frameset宣言をするのが正しいのでしょうか? いいえ、逆に誤りです。 Frameset宣言をする場合、一番外側は <html> ですが、その直下は <head> と <frameset> だけが記述可能です。文法では・・・。(現実のブラウザの動作は補正の可能性もあり、不明。) という事で、ご質問の <iframe> を用いたページではフレームを使用していないとの事から <html> の直下は <head> と <body> であると思われ、Frameset宣言をした場合は文法エラーと・・・。 で、DOCTYPE宣言の各規則が判っていないのなら、無い方がまし(無難)の様な気がします。 なにせこの質問をしている時点で、Frameset は <html> の直下は <head> と <frameset> だけが記述可能という文法を知らないという事ですから・・・。 また、DOCTYPE宣言によりブラウザがどう振る舞うかもいろいろあるし・・・。

kyanasaki
質問者

お礼

ありがとうございます。 <frameset>と言うことですね。 現在、HTMLの基本から勉強しようと思い、 質問させていただきました。 フレームとは、通常のフレームだけですね。

関連するQ&A

  • FrameSet後のiframeで

    ホームページ初心者です。 よろしくお願いします。 HTMLエディタを使い記述していますが、 画面をFrameタグを使い、いくつかに分割しました。 そのひとつのFrameの中に「iframe」タグを使い、地図データを表示させようとしています。 ソースのパス指定を絶対パス、相対パス双方試しましたが、iframe内が真っ白な状態です。ブラウザは「ページが表示されました。」と返してきています。 オフラインの状態でframeタグを宣言しているhtmlをとばし、直接iframeを宣言しているhtmlを見ると、ちゃんと表示されます。 「Frame」「iFrame」タグを使った場合に、パス指定等何か別の決まりがあるのでしょうか。

    • ベストアンサー
    • HTML
  • frameset

    HTMLで<frameset>たぐで二つのページを表示しようとしています。 一つは自分のホームページで、もう一つはmixiのページ。 あくまで、自分のPC上で見やすくするために並べたいだけなのですがうまくいきません。 以下のように指定していますが、特に問題が見当たらず、困っています。framesetタグの制限等あれば教えてください。 <frameset rows="50.*"> <frame src="http://www009.upp.so-net.ne.jp/HH87/index.html"name=left> <frame src="http://mixi.jp/show_profile.pl" name=rhght> </frameset>

  • !DOCTYPEを書く場所

    ◦<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd"> フレームを使用する場合は上記をhtmlの冒頭に書くそうですが、左右にフレームがある場合のページの場合、少なくとも3つのページ(俗っぽくいうと、index.html、frame1.html、frame2.html)を作成する必要があると思うのですが、さて、冒頭のDOCTYPE宣言文は、3つのページのうちのどれの冒頭に書けばよいのでしょうか。

  • DOCTYPE宣言 Strict HTML4.01

    DOCTYPE宣言でStrict(HTML4.01のルールに厳密かつ正確に従う定義)を指定しているのですが、フレームが使用できます。HTML4.01では、フレームは使用不可と見たのですが、どうなっているのでしょうか?

    • ベストアンサー
    • HTML
  • <frameset>と<iframe>について

    お世話になります <frameset>の場合、フレーム未対応のブラウザには <noframes>フレーム未対応のブラウザです</noframes> のようにすればいいと思うのですが<iframe>の場合はどうなのでしょうか? <iframe>もフレームなので未対応のブラウザでは表示されないのでしょうか? そもそもフレーム未対応のブラウザとはどのようなブラウザのことなのでしょうか? そういうブラウザを設定を変えたりして対応させることは可能ですか?

    • ベストアンサー
    • HTML
  • IE7とDOCTYPE宣言について

    たくさんのサイトで「IE7で表示くずれのあるページはDOCTYPE宣言を修正すればIE6での表示結果にちかづく」とありました。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> これはシステム識別子をのぞいた状態であり、IE6・IE7ともにQuirksモードという互換モードで認識するとありました。 ここでわからなくなるのですが、IE6でもIE7でも同じ認識の仕方をしているにもかかわらず、なぜIE7とIE6で表示のされ方が違うのでしょうか? 結局、IE6用のバグ逆利用css指定がIE7でバグがとられていたためという結論でいいのでしょうか? 現在、自社サイトのIE7用の表示チェックを行っており、DOCTYPE宣言を変更(識別子を加える)する必要があるのかないのかが、サイトを読んでもなかなか理解しづらいため質問させていただきました。 よろしくお願い致します。

    • ベストアンサー
    • HTML
  • ホームページ作成-Strict準拠をさせるには-

    現在HTML4.01StrictでHTML文書を記述しています。 しかし、CGI(掲示板)を読み込むページは、iframe要素を使っているため、Framesetで文書宣言をしています。だけど当方のゆくゆくの希望は、XHTML1.1に書き換えたいため、iframeを使っていることに抵抗感があります。 そこで次のような代替案を試してみましたが、CGI出力は表示されませんでした(Dreamweaverでのブラウザ出力・IE6)。下記の方法は無理があるのでしょうか? &lt;object data="….cgi" type="text/html"&gt; &lt;/object&gt; もしほかに方法があればご教示いただけないでしょうか。よろしくお願いします。 また上記方法で可能な場合、NN対策として、embedのsrc属性に、CGIを指定してもきちんと出力されるでしょうか? 併せてお願いいたします。 P.S. 『コンピュータ[家庭向け]』でも同じ質問をしましたが、削除を済ませた上でこちらに来ました。

    • ベストアンサー
    • HTML
  • ServletでのFRAMESETについて教えて下さい。

    Servletにて以下は1部ですがつくりましたが、コンパイルでFRAMESETの部分がエラーとなります。 FRAMESETは使えないのでしょうか?? 初歩的な質問で申し訳ありませんが教えて下さい。 お願いいたします。 out.println("<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">"); out.println("<%@page contentType="text/html; charset=Windows-31J"%>"); out.println("<HTML>"); out.println("<HEAD>"); out.println("<TITLE>テストWEB</TITLE>"); out.println("</HEAD>"); out.println("<FRAMESET rows="100,*" border="0" frameborder="0">"); out.println("<FRAME src="title.jsp" name="title" scrolling="no">"); out.println("<FRAMESET cols="50%,*" border="0" frameborder="0">"); out.println("<FRAME src="left.jsp" name="left">"); out.println("<FRAME src="right.jsp" name="right">"); out.println("</FRAMESET>"); out.println("<noframes>"); out.println("<h2>このページはフレーム対応のブラウザでご覧ください。</h2>"); out.println("</noframes>"); out.println("</FRAMESET>"); out.println("</HTML>");

    • ベストアンサー
    • Java
  • DOCTYPE宣言は厳密に気にするべきか??

    現在WEBを独学で学んでおります。 そこでDOCTYPE宣言についていくつか疑問に思いました。 ひとつでもわかる方はご回答頂ければ幸いです。 1.<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> と、ソースの頭に記述しておいて <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> の内容で記述(XHTML 1.0 Transitionalで記述)することは可能ですか?? つまり、HTML 4.01 Transitionalを宣言して終了タグなど、XHTML 1.0 Transitionalの方式で書いても正確に表示されるかを知りたく思って おります。 2.DOCTYPE宣言を書いてないサイトが多く見受けられますが、 この場合はどのようにDOCTYPE宣言と捉えられるのでしょうか? また、この場合のデメリットとかはありますでしょうか?? 以上、わかる方いましたらよろしくお願いいたします。

    • ベストアンサー
    • HTML
  • <object>領域の枠線とスクロールバーの消去

    HTMLカテゴリだと思うのですがcgiファイルを主に使用してるのでこちらで質問させてもらいますm(--)m <object data="test.cgi" type="text/html" width="500" height="300"> </object> これでページ内に別のページを表示できるのですが・・・ 枠線やスクロールバーを消すことができません(><) borderやstyle sheetなど自分が考えられることは全部やったつもりなのですが消す方法はあるのでしょうか? (スクロールバーはまだ試してないです) 今現在は <iframe src="./bbs/bbs.cgi" name="inline" width="100%" height="500" scrolling="auto" noresize frameborder="no"></iframe> のようにして表示してます これだとフレーム未対応のブラウザだと表示できないかな?と思って他の方法を探して<object>にたどり着きました ↑これ、誤認識ですかね?<frameset>の場合は未対応だと<noframe>で対応させるようになってるのですが<iframe>の場合は関係ないのでしょうか? それも併せて教えていただけると幸いです(^^) また<object>や<iframe>以外にページ内に別のページを表示させることができる方法を知っておられたら教えてください

    • ベストアンサー
    • CGI