iframe要素(inline frame)はページの表示域を分割するのではなく、ページの行内(インライン)に配置できるフレームで、そのフレーム内に別のリソース(情報資源)を表示させることができます。ただし、iframe要素に対応していない環境(iframe要素には Internet Explorer 3.0, Netscape 6.0 のバージョンより対応)のために要素内にはフレームを使用していること・通常のリンクから行内のページにアクセスする方法などの代替内容を記述しておく必要があります。代替内容はフレーム内のリソースが表現している情報と完全に等価なものであることが重要です。ご利用の環境では表示できません
などの記述内容では、せっかくの代替内容の意味がありません。
また、iframe要素に "アイフレーム" や、またそれを略して "アイフレ" などと勝手な呼称をつけて説明しているサイトや書籍もありますが、正確にはそれらは誤りです。"アイフレーム" は iframe要素という要素型名の読み方としては間違いではありませんが、口頭以外では HTML(XHTML)の要素型名や属性名を読み方で説明することはほとんどないため、省略前の inline frame である "インラインフレーム" の呼称を使って説明した方が適切です。
iframe要素はインライン要素だけでなくブロック要素も内包することができるので、ブロックレベル・インラインレベルの両方を取ることができる要素型に分類されます。ただし、両方同時は不可能なため、ブロック要素の中で使われた場合は、インライン要素として扱われます。
インラインフレームの位置とその後に続くテキストの揃え方を指定します(Safari では無効)。値には次の5つのキーワードがあります。キーワードは半角アルファベットの大文字・小文字が区別されません(case-insensitive)。
align属性は非推奨属性のため、CSS の floatプロパティで左右の配置とその後に続くテキスト(複数行)の揃え方を、vertical-alignプロパティでテキスト(1行)との垂直方向の並びをそれぞれ代替することが推奨されています。また、回り込んだテキストを途中で解除したい場合は br要素に clear属性を指定すれば良いのですが、clear属性も非推奨属性のため、インラインフレームの後に続くブロック要素に clearプロパティを指定すると良いでしょう。
インラインフレームの高さを指定します。CSS の heightプロパティで代替が可能です。
インラインフレームの境界線の表示・非表示を指定します。値には "1"、または "0" を指定します。
frameborder属性の指定がない場合、初期値は境界線を表示する設定になっています。
インラインフレームに関する詳細な説明がある URI を示します。視覚によらない非視覚環境に対して有効なもので、title属性の情報を補います。title属性はあくまでも端的な説明を行うためのものであって、詳しい説明をするために長々としたテキストを指定するのは現実的ではありません。そこで longdesc属性の値に行内のフレームに関する詳しい記述のあるページを指定し、そちらに誘導します。
<iframe src="最初に表示させるファイルの URI" name="inline" width="350" height="300" frameborder="1" scrolling="yes" align="center" marginwidth="25" marginheight="25" longdesc="descript.html" title="別のページを埋め込んでいます。詳細はこちらへ。"> インラインフレーム非対応環境用の代替内容 </iframe>
インラインフレームと周りのテキストとの間に上下の余白を設けます。値は整数(ピクセル数で解釈)で指定します。CSS の marginプロパティで代替が可能です。
インラインフレームと周りのテキストとの間に左右の余白を設けます。値は整数(ピクセル数で解釈)で指定します。CSS の marginプロパティで代替が可能です。
インラインフレームに名前を付けて、(a要素, area要素, base要素, form要素, link要素の)target属性でリンク先に特定のリソースを参照させることができます。インラインフレーム名は半角アルファベットの大文字・小文字が区別されません(case-insensitive)。
インラインフレームにスクロールバーを付けるかどうかを指定します。値には次の3つのキーワードがあります。キーワードは半角アルファベットの大文字・小文字が区別されません(case-insensitive)。
スクロールを許可する場合は、フレームの右または下にスクロールバーが表示されます。スクロールを禁止した場合は、フレームページの内容がはみだしてフレーム外に隠れてしまってもスクロールバーは表示されません。なお、scrolling属性の指定がない場合は、初期値の "auto" が適用され、ページ内容よりもインラインフレームのサイズが小さい場合にスクロールバーを表示します。CSS の overflowプロパティでも代替が可能です。
インラインフレームに一番最初に表示させるページ、または画像ファイルなどのリソースの所在を URI で指定します。
インラインフレームの横幅を指定します。CSS の widthプロパティで代替が可能です。