HTML5

タグ(要素)

IFRAME

  編集:2022.06.24 by T.A.

mdn

ネストされたブラウジング コンテキスト。

この要素を使用できる文脈

エンベディッド内容が期待される場所。

内容モデル

なし

text/htmlにおけるタグ省略

どちらのタグも省略不可。

内容属性
解説

ここでブログは、ブログの記事のコメントで、スクリプト インジェクションから追加の保護レイヤーとともに、この機能をサポートするユーザー エージェントのユーザーに提供するため、以下に記載の sandbox 属性と一緒に srcdoc 属性を使用する:

<ARTICLE>
 <H1>I got my own magazine!</H1>
 <P>After much effort, I've finally found a publisher, and so now I
 have my own magazine!Isn't that awesome?!The first issue will come
 out in September, and we have articles about getting food, and about
 getting in boxes, it's going to be great!</P>
 <FOOTER>
  <P>Written by <A href="/users/cap">cap</A>, 1 hour ago.
 </FOOTER>
 <ARTICLE>
  <FOOTER> Thirteen minutes ago, <A href="/users/ch">ch</A> wrote: </FOOTER>
  <IFRAME sandbox srcdoc="<P>did you get a cover picture yet?"></IFRAME>
 </ARTICLE>
 <ARTICLE>
  <FOOTER> Nine minutes ago, <A href="/users/cap">cap</A> wrote: </FOOTER>
  <IFRAME sandbox srcdoc="<P>Yeah, you can see it <A href="/gallery?mode=cover&amp;amp;page=1">in my gallery</A>."></IFRAME>
 </ARTICLE>
 <ARTICLE>
  <FOOTER> Five minutes ago, <A href="/users/ch">ch</A> wrote: </FOOTER>
  <IFRAME sandbox srcdoc="<P>hey that's earl's table.
<P>you should get earl&amp;amp;me on the next cover."></IFRAME>
 </ARTICLE>

src属性

リソースのアドレス。

その要素のネストされたブラウジング コンテキストが含まれるページの URL を与える。属性が存在する場合、潜在的にスペースで囲まれた妥当な空でない URLでなければならない。itemprop 属性が IFRAME 要素で指定される場合、src 属性も指定されなければならない。

srcdoc属性

IFRAME 内でレンダリングする文書。

その要素のネストされたブラウジング コンテキストが含まれるページのコンテンツを与える。属性の値は、iframe srcdoc 文書のソースである。

srcdoc 属性が存在する場合、指定された順序で、次の構文上のコンポーネントを構成する HTML 構文を使用した値を持たなければならない:

  1. 任意の数のコメントおよび ASCII 空白文字
  2. 任意で、DOCTYPE
  3. 任意の数のコメントおよび ASCII 空白文字。
  4. html 要素の形式で、文書要素
  5. 任意の数のコメントおよび ASCII 空白文字。
name属性

ネストされたブラウジング コンテキスト名。

name 属性が存在する場合、妥当なブラウジング コンテキスト名でなければならない。指定された値は、要素のネストされたブラウジング コンテキストが作成されたときに存在する場合、その名前を付けるために使用される。

<A href="../Sample/Hn.htm" target=nameTest>リンク</A><BR>
<IFRAME name=nameTest></IFRAME>

sandbox属性

ネストされた内容のセキュリティ ルール。

sandbox 属性が指定された場合、IFRAME 要素によってホストされるあらゆるコンテンツに一連の追加の制限が可能になる。その値は、ASCII 大文字・小文字不区別である順不同の一意な空白区切りトークンの集合でなければならない。

許可される値は、

値(キーワード)概要
allow-downloads-without-user-activation 実験的。ユーザーの操作なしでダウンロードが発生することを許可します。
allow-downloads ユーザーの操作により発生するダウンロードを許可します。
allow-forms リソースがフォームを送信することを許可します。このキーワードが使用されない場合は、フォーム送信がブロックされます。
allow-modals リソースがモーダル ウィンドウを開くことができるようにします。
allow-orientation-lock リソースがスクリーンの方向をロックすることができるようにします。
allow-pointer-lock リソースが Pointer Lock API (en-US) を使用できるようにします。
allow-popups (window.open()、target="_blank"、showModalDialog() のような)ポップアップを許可します。このキーワードを与えなければ、これらの機能は暗黙に失敗します。
allow-popups-to-escape-sandbox サンドボックス化された文書が、サンドボックスを継承するウィンドウではないウィンドウを開けるようにします。例えば、これによって安全に広告をサンドボックス化し、同じ制約を広告のリンク先のページに強制しないようにすることができます。
allow-presentation リソースがプレゼンテーション セッション (en-US)を開始できるようにします。
allow-same-origin このトークンが使用されなかった場合、リソースは特殊なオリジンからのものであるとして扱い、常に同一オリジンポリシーに失敗します。
allow-scripts リソースがスクリプト(ただし、ポップアップウィンドウを作成しないもの)を実行できるようにします。
allow-storage-access-by-user-activation 実験的。リソースが Storage Access API で親のストレージ容量へのアクセスを要求できるようにします。
allow-top-navigation リソースが最上位の閲覧コンテキスト(_top という名前のもの)に移動できるようにします。
allow-top-navigation-by-user-activation リソースが最上位の閲覧コンテキストに移動できるようにしますが、ユーザーの操作によって開始されたものに限ります。

この属性が設定される場合、コンテンツは一意な生成元からのものとして扱われ、フォームやスクリプトは無効となり、リンクは他のブラウジング コンテキストをターゲットすることを防ぎ、プラグインは保護される。

allow-top-by-user-activation キーワードは allow-top-navigation と同様に動作するが、ブラウジング コンテキストのアクティブ ウィンドウが transient activation を持つ場合にのみそのようなナビゲーションを許可する。

allow-formsallow-modalsallow-orientation-lockallow-pointer-lockallow-popupsallow-presentationallow-scriptsallow-popups-to-escape-sandbox キーワードは、フォーム、モーダルダイアログ、スクリーンの向きのロック、ポインターロック API、ポップアップ、プレゼンテーション API、スクリプトおよびサンドボックス化されない補助ブラウジングコンテキストの作成をそれぞれ再有効にする。[POINTERLOCK] [SCREENORIENTATION] [PRESENTATION]

allow-top-navigation および allow-top-navigation-by-user-activation キーワードは、重複するため、両方指定されてはならない。そのような不適合マークアップにおいて、allow-top-navigation のみが効果を持つ。

allow属性

IFRAME のコンテンツに適用されるパーミッション ポリシー。

指定された場合、IFRAME のネストされたブラウジング コンテキスト内の Document に対するパーミッション ポリシーが初期化されるときに使用されるコンテナ ポリシーを決定する。その値はシリアライズされたパーミッション ポリシーでなければならない。[PERMISSIONSPOLICY]

複数指定する場合はセミコロン「;」で区切る。
fullscreen alowlist iframe 内のすべてのブラウジング コンテキストに、フルスクリーンの使用を許可する。
'none' フルスクリーンの使用をブロックする。
'src'
url 特定のオリジンの IFRAME のコンテンツに、ユーザーの位置情報へのアクセスを許可する。
camera alowlist カメラの使用をブロックする。
'none'
microphone alowlist マイクロホンの使用をブロックする。
'none'

この例において、iframeは、オンライン ナビゲーション サービスから地図を埋め込むために使用される。allow属性は、ネストされたコンテキスト内でジオロケーションAPIを有効にするために使用される。

<iframe src="https://maps.example.com/" allow="geolocation"></iframe>
<IFRAME id=IdallowIframe allow="fullscreen 'none'" src="Com/allowfullscreen_Test.htm"></IFRAME><BR>

allowfullscreen属性

IFRAME のコンテンツに requestFullscreen() の使用を許可するかどうか。真偽属性。

指定する場合、IFRAME 要素のネストされたブラウジング コンテキスト内の Document オブジェクトは、任意の生成元から "fullscreen" 機能を使用できるようにするパーミッション ポリシーで初期化されることを示す。これは、パーミッション ポリシー属性を処理する アルゴリズムによって実施される。[PERMISSIONSPOLICY]

ここで、iframeはビデオサイトからのプレーヤーを埋め込むために使用される。allowfullscreen属性はそのビデオをフルスクリーン表示するようなプレーヤーを有効にするために必要とされる。

<article>
 <header>
  <p><img src="/usericons/1627591962735"> <b>Fred Flintstone</b></p>
  <p><a href="/posts/3095182851" rel=bookmark>12:44</a> — <a href="#acl-3095182851">Private Post</a></p>
 </header>
 <p>Check out my new ride!</p>
 <iframe src="https://video.example.com/embed?id=92469812" allowfullscreen></iframe>
</article>
<IFRAME id=Idallowfullscreen0Iframe src="../Sample/Hn.htm"></IFRAME><BR>
<BUTTON onclick="Idallowfullscreen0Iframe.requestFullscreen()">フルスクリーン</BUTTON><BR>

<IFRAME id=IdallowfullscreenIframe allowfullscreen=false src="../Sample/Hn.htm"></IFRAME><BR>
<BUTTON onclick="IdallowfullscreenIframe.requestFullscreen()">フルスクリーン</BUTTON><BR>

<IFRAME id=Idallowfullscreen2Iframe allowfullscreen=false src="Com/allowfullscreen_Test.htm"></IFRAME><BR>

width属性

横方向の大きさ。ピクセル値として指定。

height属性

縦方向の大きさ。ピクセル値として指定。

referrerpolicy属性

要素によって開始されたフェッチのためのリファラー ポリシー。

その目的は、iframe属性¶を処理するときに使用されるリファラー ポリシーを設定することにある。[REFERRERPOLICY]A

loading属性

読み込み延期を決定するときに使用。

その目的は、ビューポート外にある IFRAME を読み込むためのポリシーを示すことである。

ブラウザーが iframe をどのように読み込むかを示します。

eager 可視ビューポートの外にあるかどうかに関わらず、iframe を直ちにロードします(これが既定値です)。
lazy ブラウザーで定義されたビューポートからの計算された距離に達するまで iframe の読み込みを延期します。

HTML:

ここに表示
HTML:

ここに表示
スクリプト:


スクリプト:



表示内容:
表示内容: