iframeタグの使い方と外部コンテンツの埋め込み方法をわかりやすく解説

スポンサーリンク
スポンサーリンク

iframeの概要

別のWebページやコンテンツを埋め込む HTMLタグ

<iframe src=”URL”></iframe>

概要 iframeタグは、別のWebページや動画、地図、広告などのコンテンツを現在のページに埋め込むためのタグです。

  • 外部サイトのWebページを埋め込むことができる。
  • Googleマップ、YouTube動画、広告バナーなどの表示に利用される。
  • セキュリティ上の理由で、一部のサイトではiframeによる埋め込みを禁止している。

iframeタグの主な属性

属性 説明 使用例
src 埋め込むコンテンツのURL <iframe src="https://ja.wikipedia.org/wiki/"></iframe>
width iframeの幅(pxまたは%) <iframe width="600"></iframe>
height iframeの高さ(pxまたは%) <iframe height="400"></iframe>
frameborder 枠線の表示(0: 非表示、1: 表示)※非推奨 <iframe frameborder="0"></iframe>
allowfullscreen 動画などのフルスクリーン表示を許可 <iframe allowfullscreen></iframe>
loading 読み込みの遅延(lazy: 遅延読み込み、eager: 即時読み込み) <iframe loading="lazy"></iframe>
sandbox セキュリティ制限を設定 <iframe sandbox="allow-scripts"></iframe>

iframeタグの基本的な使い方

以下の例では、外部サイトをiframe内に埋め込んでいます。

<iframe src="https://ja.wikipedia.org/wiki/" width="600" height="400"></iframe>

実行例:

iframeタグの応用:YouTube動画の埋め込み

YouTube動画を埋め込む場合、YouTubeが提供する埋め込み用のURLを使用します。

<iframe width="560" height="315" src="https://www.youtube.com/embed/VIDEO_ID" allowfullscreen></iframe>

iframeタグの応用:Googleマップの埋め込み

Googleマップの共有機能を使って、特定の場所をiframeで埋め込むことができます。

<iframe width="600" height="450" src="https://www.google.com/maps/embed?pb=..." allowfullscreen></iframe>

iframeのセキュリティ対策

  • サンドボックス化(sandbox属性): iframe内のスクリプト実行を制限できます。
  • リファラー制御(referrerpolicy属性): クリック時に送信されるリファラー情報を制御できます。
  • CSP(Content Security Policy)を設定: 外部コンテンツの読み込みを制限できます。
  • X-Frame-Optionsヘッダー: クリックジャッキング攻撃を防ぐためにiframeの使用を制限することが推奨されます。

よくある質問

Q: iframeタグを使って埋め込めないサイトがありますが、なぜですか?
A: 多くのサイトはX-Frame-Optionsヘッダーを設定しており、iframeによる埋め込みを防止しています。
Q: iframeのスクロールバーを非表示にできますか?
A: CSSのoverflow: hidden;を使用することで非表示にできます。
Q: iframeタグをレスポンシブ対応させる方法は?
A: CSSのwidth: 100%;height: auto;を指定し、親要素のサイズに応じて調整します。
Q: iframeの代わりに使えるタグはありますか?
A: objectタグやembedタグも外部コンテンツの埋め込みに使用できますが、iframeほど広く使われていません。
Q: iframeを使うとSEOに悪影響がありますか?
A: 一般的に、iframe内のコンテンツは検索エンジンにインデックスされにくく、SEOにはあまり良い影響を与えません。

まとめ

  • iframeタグは、外部コンテンツ(Webページ、動画、地図など)を埋め込むために使用する。
  • src属性で埋め込むURLを指定し、widthheightでサイズを設定できる。
  • GoogleマップやYouTube動画の埋め込みに多く利用される。
  • セキュリティ対策として、sandbox属性やCSPを活用することが推奨される。
  • SEOの観点から、iframe内のコンテンツは検索エンジンに認識されにくい。