<iframe srcdoc=""></iframe>
更新日 | |
---|---|
仕様 | HTML Living Standard |
分類 | フロー・コンテンツ / フレージング・コンテンツ / エンベッディッド・コンテンツ / インタラクティブ・コンテンツ / パルパブル・コンテンツ |
利用場所 | エンベッディッド・コンテンツが置ける場所 |
内容 | 無し |
iframe要素に srcdoc=""
を追加すると、インラインフレームの内容を属性値として記述することができます。
<iframe srcdoc="<p>フレームの内容</p>"></iframe>
属性 | 値 | ||
---|---|---|---|
任意属性 | |||
srcdoc="" |
フレーム内のコンテンツ | HTMLコード | フレーム内に表示するコンテンツ |
srcdoc属性に記述した値(HTMLコード)が、インラインフレーム内に埋め込まれることになります。
値には次のような形式でHTMLコードを記述します。
srcdoc="<!DOCTYPE html><html><head><title>サンプル</title></head><body><p>フレームの内容</p></body></html>"
しかし、この場合はDOCTYPE
、html
、head
、title
、body
が省略可能なので、実際には次のように(body
の内容のみを)記述することができます。
srcdoc="<p>フレームの内容</p>"
エスケープについて
値の文字列にダブルクォーテーション( "
)やアンパサンド( &
)が含まれる場合は、それらを次のようにエスケープしておきます。(アンパサンドは二重にエスケープする必要があります)
- (
"
) →"
- (
&
) →&amp;
<iframe srcdoc="<p><a href="bbs.cgi?no=15&amp;res=5">リンクテキスト</a></p>"></iframe>
src属性との関係について
src属性とsrcdoc属性が同時に指定された場合は、srcdoc属性が優先されることになります。
<iframe src="example.html" srcdoc="<p>フレームの内容</p>"></iframe>
例えば、上記のように記述した場合には、ブラウザにより次のように選択されることになります。
- srcdoc属性に対応しているブラウザでは、srcdoc属性の値(
<p>フレームの内容</p>
)がインラインフレーム内に埋め込まれます。この場合、src属性の指定は無視されます。 - srcdoc属性に対応していないブラウザでは、src属性で指定した文書がインラインフレーム内に埋め込まれます。