埋め込みとは

YouTube 動画や Google マップなど、外部サービスの画面を iframe でページ内に表示する仕組み。

概要

YouTube の動画や Google マップなど、外部サービスが提供する画面をそのまま自分のページの中に表示する 仕組みです。多くの場合 <iframe> 要素に外部サービスが発行する埋め込み用の URL を指定するだけで 実現できます。

別名

表記ゆれ:埋め込み、iframe 埋め込み、動画埋め込み、地図埋め込み、embed

「iframe 埋め込み」は実装方法に着目した呼び方で、「動画埋め込み」「地図埋め込み」は埋め込む対象で 呼び分けた言い方です。

AI への伝え方

「YouTube の動画を埋め込んで」「Google マップを埋め込んで」のように、埋め込む対象と URL を伝えます。 <iframe> には代替テキストの役割を果たす title 属性が必須で、省略するとスクリーンリーダー利用者に 何の埋め込みか伝わりません。画面外にある埋め込みの読み込みを後回しにしてページの表示を速くしたい場合は loading="lazy" を付けるよう伝えてください。地図や動画のような比率が決まったコンテンツは、読み込み中も aspect-ratio: 16 / 9 のような比率でスペースを確保しておくとレイアウトのガタつき(レイアウトシフト)を 防げます。

デモ

ここに動画が表示されます

ここに地図が表示されます

コード

HTML
<div class="embed-demo">
  <!--
    YouTube を埋め込むときの書き方の例です(このデモは外部を読み込まないため、
    実際には下のプレースホルダーを表示しています)。src の動画 ID は例です。

    <iframe
      src="https://www.youtube.com/embed/dQw4w9WgXcQ"
      title="動画のタイトル"
      loading="lazy"
      allowfullscreen
    ></iframe>
  -->
  <div class="embed-demo__frame">
    <p class="embed-demo__placeholder">ここに動画が表示されます</p>
  </div>

  <!--
    Google マップを埋め込むときの書き方の例です。

    <iframe
      src="https://www.google.com/maps/embed?pb=example"
      title="地図"
      loading="lazy"
    ></iframe>
  -->
  <div class="embed-demo__frame">
    <p class="embed-demo__placeholder">ここに地図が表示されます</p>
  </div>
</div>
CSS
.embed-demo {
  display: flex;
  flex-direction: column;
  gap: 16px;
  font-family: sans-serif;
}

.embed-demo__frame {
  aspect-ratio: 16 / 9;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px dashed #b3b3b3;
  border-radius: 8px;
  background: #f2f2f2;
  color: #666666;
}

.embed-demo__placeholder {
  margin: 0;
  font-size: 14px;
}