| 文書型 | 適用 | 子要素 | 開始タグ | 終了タグ | 分類 | 
|---|---|---|---|---|---|
| Strict | × | 利用できません | |||
| Transitional | ○ | インライン要素 ブロックレベル要素 | 必須 | 必須 | ブロックレベル要素 | 
| Frameset | ○ | body要素 | frameset要素の子要素 | ||
フレームを利用したページを作るときに、フレーム未対応のブラウザやフレームを表示しないように設定している場合などに、代わりに表示する内容を表す要素です。Frameset DTDではframeset要素の子要素に配置します。
Frameset DTDの場合noframes要素の中身にはbody要素が一つ必要で、その中にサイトのタイトルやメニューなどが記述されます。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
      "http://www.w3.org/TR/html4/frameset.dtd">
<html lang="ja">
  <head>
    …
  </head>
  <frameset title="サイトのタイトル" cols="100,*">
    <frame src="menu.html" title="メニュー" name="left">
    <frame src="main.html" title="メイン画面" name="right">
    <noframes>
      <body>
        <h1>サイトのタイトル</h1>
        <ul>
          <li><a href="diary.html">日記帳</a></li>
          <li><a href="works.html">作品</a></li>
          <li><a href="profile.html">プロファイル</a></li>
        </ul>
      </body>
    </noframes>
  </frameset>
</html>Lynxでは次の図のように表示されます。
noframes要素はframeset要素の子要素です。<frameset>〜</frameset>の外側に配置してはいけません。次の例は誤りです。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
      "http://www.w3.org/TR/html4/frameset.dtd">
<html lang="ja">
  <head>
    …
  </head>
  <frameset title="サイトのタイトル" cols="100,*">
    …
  </frameset>
  <noframes>
    <body>
      …
    </body>
  </noframes>
</html>また、<noframes>の「s」を落として<noframe>としないよう気をつけてください。
noframes要素の中身には、フレームページの代わりになる内容を記述します。次のような例はよくありません。
<noframes>
  <body>
    <p>フレームに対応したブラウザでご覧ください。</p>
  </body>
</noframes>これでは結局フレーム未対応のブラウザで閲覧できないので、noframes要素の意味がありません。
<![ %HTML.Frameset; [
<!ENTITY % noframes.content "(BODY) -(NOFRAMES)">
]]>
<!ENTITY % noframes.content "(%flow;)*">
<!ELEMENT NOFRAMES - - %noframes.content;
 -- alternate content container for non frame-based rendering -->
<!ATTLIST NOFRAMES
  %attrs;                              -- %coreattrs, %i18n, %events --
  >