本来のマークアップとして定義された規格ではありません。定義されており、XHTML1.1とHTML5では廃止され、一切定義されていません。非視覚環境はページ分割フレームを使用したページの内容を把握するのが困難です。JISウェブコンテンツ素案では、ページ分割フレームについて次のように書かれています。フレームの使用は、必要最小限にすることが望ましい。使用する場合は、フレームの識別が可能なようにタイトルを付与する等、配慮しなければならない。frame要素を使う場合は、noframes要素内に代替情報を付与する。この場合の代替情報は、frameset要素に含まれるすべてのhtml文書の情報と完全に等価なものでなければならない。たしかにページ分割フレームは、メニューを固定できるので限定された部分ではユーザビリティを強化してくれますが、その一方で多くの弊害もでてきます。ここではフレームの作成についての解説に留めたいため、どのような弊害があるのかについては、フレームの最適化にまとめてありますので、あわせて参照されることをおすすめします。フレームを使ったナビゲーションを提供するサイト設計にするのであれば、フレームを使うことで生じる弊害と、その弊害を緩和するための正しい使い方などを知ってもらった上で、フレームを使われることをおすすめします。frameset要素の中で使って、分割して表示する個々のページに関する指定を行います。title="コンテンツ"><noframes>フレーム非対応環境用の代替内容</noframes></frameset></html>表示域を分割した各部分をフレームといいます。フレームを作成するにあたって用意する必要のあるファイルは、フレームの割り付けを定義した設定文書(フレーム設定文書と呼ぶ)と、それぞれ分割されたフレーム部分に表示させる内容となるファイルが必要になります。フレーム設定文書+フレームの数だけのファイルが必要となります。frameset要素はフレームを定義する要素です。ひとつのページを分割する役割をします。rows属性を追加します。それぞれ値には分割するフレームの表示域のサイズをカンマ(,)で区切って指定します。指定する単位は、整数によるピクセル数で固定するか、表示域全体の横幅、縦幅に対するパーセンテージ値(%)で指定します。パーセンテージ値(%)でサイズを指定した場合、ユーザ側の表示域のサイズ変動にあわせてフレームのサイズも自動的に伸縮します。この分割する表示域のサイズを指定する値に、数値の代わりにアスタリスク(*)を使うと、「残り全部」という指定もできます。frameset要素の中に記述して、分割された各部分のフレームに関する設定を行います。frame要素を定義します。name属性は、そのフレームに対して任意の名称をつける属性です。フレーム内からリンクを設定する場合に、target属性でリンク先を表示させるフレームを指定する場合に指定します。noframes要素はフレームのレンダリングに対応していない環境用に表示させる内容を指定します。フレームのレンダリングに対応していないものもあります。noframes要素内の記述は無視されるため表示されることはありません。間にフレームが表示できない場合の代替として表示させる内容を指定します。フレームをウェブサイト全体のナビゲーションに使用しているような場合は、ウェブサイトのテーマ(概要)とサイトマップのようにサイトのコンテンツ一覧を記述するようにしておくと、フレームに対応していない環境でも問題なくコンテンツを参照することができます。frameborder属性は分割したフレーム間の境界線(罫線)について、表示の有無を指定する属性です。(半角数字の)1境界線を表示する(半角数字の)0境界線を表示しないframeborder属性の指定がない場合、初期値は境界線を表示する設定(frameborder="1")になっています。frame要素に境界線を表示しない設定(frameborder="0")を行っていても境界線は表示されます。独自機能ですが主要ブラウザもすべて対応しています。border属性は分割された個々のフレーム全体に適用されます。値は境界線の太さを整数(ピクセル数で解釈)で指定します。frameborder属性に境界線を表示しない設定(frameborder="0")を行っていても、細いフレームの境界線が残ります。指定する必要があります。scrolling属性はフレームのページ内容よりも表示域のサイズが小さい場合にスクロールさせるか否かを指定します。値には次の3つのキーワードがあります。yes常にスクロールを許可no常にスクロールを禁止auto必要に応じてスクロールを許可(フレームのページ内容よりも表示域が小さい場合)スクロールを許可する場合はフレームの右または下にスクロールバーが表示されます。スクロールを禁止した場合はフレームのページ内容がはみだしてフレーム外に隠れてしまってもスクロールバーは表示されません。適用され、フレームのページ内容に応じて表示域のサイズよりも小さい場合にスクロールバーを表示します。noresize属性はフレームの表示サイズの変更を禁止する属性です。rows属性(横に分割する場合)で指定しますが、フレームの境界線部分にポインティングデバイス(マウスやノートパソコン付属のトラックパッドなど)のカーソルをあわせてドラッグすることでユーザ側で自由にサイズ変更することできます。noresize属性はユーザ側でのフレームのサイズ変更を禁止してサイズを固定するオプションです。scrolling属性にスクロールを禁止する指定を加えることで、そのフレームの内容を完全に固定して表示することもできます。marginheight属性はフレーム内に表示するページの余白(マージン)を指定する属性です。marginwidth属性はフレーム内の左右の余白を、marginheight属性はフレーム内の上下の余白を指定します。値はどちらも余白の大きさを整数(ピクセル数で解釈)で指定します。src="最初に表示させるファイルのURI">インラインフレーム非対応環境用の代替内容</iframe>iframe要素はインラインフレーム(行内フレーム)を定義します。インラインフレームとは表示域全体を分割するのではなく、行内(インライン)に配置できるフレームで、そのフレーム内に指定のファイルを表示することができます。iframe要素の中にインラインフレームを使用していること・行内のページにアクセスする方法などの代替内容を記述しておくようにします。指定することはできません。marginheight="25">フレーム非対応環境用の代替内容</iframe>iframe要素にはさまざまな属性があり、組み合わせることで多様なレイアウトが可能です。name属性は行内のフレームに名称をつける属性で、値には任意の名称を指定します。target属性でリンク先を表示させるフレームを指定する場合に指定します。height属性はインラインフレームの表示サイズのそれぞれ横幅と高さを指定する属性で、値はどちらもそのサイズを整数(ピクセル数で解釈)で指定します。frameborder属性に未対応です)。値には次の2種類があります。(半角数字の)1境界線を表示する(半角数字の)0境界線を表示しないscrolling属性はページ内容よりもインラインフレームのサイズ小さい場合にスクロールするか否かを指定する属性です。値には次の3つのキーワードがあります。yes常にスクロールを許可no常にスクロールを禁止auto必要に応じてスクロールを許可(ページ内容よりもインラインフレームのサイズ小さい場合)スクロールを許可する場合は、インラインフレームの右または下にスクロールバーが表示されます。スクロールを禁止した場合は、インラインフレームよりページ内容がはみだしてインラインフレーム外に隠れてしまってもスクロールバーは表示されません。適用され、ページ内容よりもインラインフレームのサイズ小さい場合にスクロールバーを表示します。overflowプロパティで代替が可能です。align属性はインラインフレームとその周りに配置されるテキストの並びを指定する属性です。値には次の5つのキーワードがあります。floatプロパティで左右の配置とその後に続くテキスト(複数行)の揃え方を、vertical-alignプロパティでテキスト(1行)との垂直方向の並びをそれぞれ代替することが推奨されています。marginheight属性はインラインフレーム内に表示するページの余白を指定する属性で、marginwidth属性は左右の余白、marginheight属性は上下の余白を指定します。値はいずれも余白の大きさを整数(ピクセル数で解釈)で指定します。フォーム表(テーブル)ContactWeb制作に関するご相談、お気軽にお問い合わせください。StandardsAppendixBlogWorksAboutコンセプト会社概要Webデザイナー募集ContactSubscribeTwitterFacebookGoogle+。