Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【HTML Living Standard】object要素の使い方

object要素の使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

objectオブジェクトは、HTMLドキュメントに外部リソースを埋め込むことを表すオブジェクトです。この要素は、画像、音声、動画、PDFファイル、またはFlashアニメーションなど、幅広い種類のコンテンツをウェブページ内に統合する汎用的な手段を提供します。主に、特定のプラグインや外部アプリケーションが必要なコンテンツを表示するために利用されます。

object要素を使用することで、外部コンテンツの表示領域を定義し、そのリソースのURLをdata属性で指定します。また、type属性でリソースのMIMEタイプを指定することで、ブラウザが適切なハンドラを判断する手助けをします。width属性とheight属性を用いることで、埋め込まれるコンテンツの表示サイズを制御できます。

この要素の大きな特徴は、ブラウザが指定されたリソースをロードできない場合や、ユーザー環境がそのリソースに対応していない場合に表示される代替コンテンツを指定できる点です。object要素の開始タグと終了タグの間に記述された内容は、外部リソースが表示できない場合にのみユーザーに提示されます。

現代のウェブ開発では、画像にはimg要素、動画にはvideo要素、音声にはaudio要素、別のウェブページ埋め込みにはiframe要素など、よりセマンティックで専用の要素が推奨されています。しかし、object要素は、PDFファイルの埋め込みや、ActiveXコントロールのような特定の種類の外部アプリケーションコンテンツを統合する際に、依然として有効な選択肢となり得ます。ブラウザ間の互換性を考慮し、適切な用途で利用することが重要です。

公式リファレンス: <object>: The External Object element

構文(syntax)

1<object data="uri_of_content_to_embed" type="mime/type_of_content" width="value_in_pixels" height="value_in_pixels">
2  <p>Fallback content: Your browser does not support this object or the content cannot be displayed.</p>
3</object>

引数(parameters)

引数なし

引数はありません

戻り値(return)

戻り値なし

戻り値はありません

サンプルコード

HTML object タグで外部コンテンツを埋め込む

1<!DOCTYPE html>
2<html lang="ja">
3<head>
4    <meta charset="UTF-8">
5    <meta name="viewport" content="width=device-width, initial-scale=1.0">
6    <title>HTML object タグのサンプルコード</title>
7</head>
8<body>
9    <h1>外部コンテンツの埋め込み例(<code>&lt;object&gt;</code>タグ)</h1>
10
11    <p>
12        <code>&lt;object&gt;</code>タグは、画像、音声、動画、PDFファイルなど、様々な種類の外部コンテンツをHTMLドキュメントに埋め込むために使用されます。
13        以下の例では、PDFファイルを埋め込む方法を示します。
14    </p>
15
16    <!-- 
17        <object>タグを使用してPDFファイルを埋め込む例です。
18        - data属性: 埋め込むコンテンツのURLを指定します。ここでは架空の「sample.pdf」を指定しています。
19                    実際に動作させるには、このパスに有効なPDFファイルを配置する必要があります。
20        - type属性: 埋め込むコンテンツのMIMEタイプを指定します。PDFの場合は「application/pdf」です。
21        - width/height属性: 埋め込まれたコンテンツの表示サイズをピクセル単位で指定します。
22    -->
23    <object data="sample.pdf" type="application/pdf" width="700" height="500">
24        <!-- 
25            フォールバックコンテンツ: 
26            ブラウザが<object>タグの内容を表示できない場合(例: PDFビューアプラグインがない場合など)に、
27            このタグの内部に記述されたコンテンツが表示されます。
28            ここでは、PDFのダウンロードリンクを提供しています。
29        -->
30        <p>お使いのブラウザではPDFファイルを表示できません。</p>
31        <p><a href="sample.pdf">PDFファイルをダウンロード</a>してご覧ください。</p>
32    </object>
33
34    <p>
35        <strong>注意:</strong> 現代のWeb開発では、特定のコンテンツ(画像、動画など)を埋め込む際には、
36        よりセマンティックで機能が豊富な<code>&lt;img&gt;</code><code>&lt;video&gt;</code><code>&lt;audio&gt;</code><code>&lt;iframe&gt;</code>などの専用タグが推奨されることが多いです。
37        <code>&lt;object&gt;</code>タグは、特に汎用的なプラグインコンテンツの埋め込みに用いられていました。
38    </p>
39</body>
40</html>

HTMLの<object>タグは、画像、音声、動画、PDFファイルなど、様々な種類の外部コンテンツをHTMLドキュメント内に埋め込むために使用される要素です。このタグ自体に引数や戻り値はありませんが、属性を使って埋め込むコンテンツの情報を指定します。

サンプルコードでは、<object>タグを使ってPDFファイルをWebページに埋め込む例を示しています。data属性には埋め込みたいコンテンツのURL(この例では「sample.pdf」)を指定し、type属性にはコンテンツの種類を示すMIMEタイプ(PDFの場合は「application/pdf」)を指定します。また、width属性とheight属性で、埋め込まれるコンテンツの表示サイズをピクセル単位で設定できます。

<object>タグの内部に記述された内容は、ブラウザが埋め込みコンテンツを表示できない場合の「フォールバックコンテンツ」として機能します。例えば、お使いのブラウザにPDFビューアのプラグインがない場合、タグ内部に記述された「お使いのブラウザではPDFファイルを表示できません。」といったメッセージやダウンロードリンクが表示され、ユーザーはコンテンツにアクセスする別の手段を得ることができます。

現代のWeb開発においては、画像には<img>、動画には<video>、埋め込みページには<iframe>など、特定のコンテンツに特化したタグが推奨されることが多いです。しかし、<object>タグは汎用的な外部コンテンツの埋め込み手段として利用できます。

<object>タグは、PDFファイルなどの外部コンテンツをWebページに埋め込む際に利用します。data属性には埋め込むファイルのURLを、type属性にはそのファイルのMIMEタイプを正確に指定してください。サンプルコードのsample.pdfは架空のパスですので、実際に動作させる場合は有効なファイルパスに置き換える必要があります。

重要な注意点として、ブラウザが何らかの理由で埋め込みコンテンツを表示できない場合に備え、<object>タグの内部には「フォールバックコンテンツ」(例: ダウンロードリンクなど)を必ず記述してください。これにより、ユーザーは代替手段を利用できます。

現代のWeb開発では、画像には<img>、動画には<video>、音声には<audio>、外部ページには<iframe>など、コンテンツの種類に応じた専用タグが推奨されることが多いです。<object>タグは汎用的なプラグインコンテンツの埋め込みに用いられていましたが、表示にはブラウザのプラグイン状況が影響する場合があることを理解しておきましょう。

HTML object要素でPDFを埋め込む

1<!DOCTYPE html>
2<html lang="ja">
3<head>
4    <meta charset="UTF-8">
5    <meta name="viewport" content="width=device-width, initial-scale=1.0">
6    <title>HTML object要素 PDF埋め込みサンプル</title>
7</head>
8<body>
9    <h1>PDFファイルの埋め込み例</h1>
10    <p>
11        <code>&lt;object&gt;</code>要素を使用して、ウェブページ内にPDFファイルを埋め込んでいます。<br>
12        この例では「sample.pdf」という架空のPDFファイルを参照しています。
13    </p>
14
15    <!-- 
16        object要素を使用してPDFファイルを埋め込む
17        data属性: 埋め込むコンテンツのURLを指定 (例: sample.pdf)
18        type属性: コンテンツのMIMEタイプを指定 (PDFの場合は application/pdf)
19        width/height属性: 表示サイズを指定
20    -->
21    <object data="sample.pdf" type="application/pdf" width="800" height="600">
22        <!-- 
23            object要素の内容は、ブラウザが埋め込みに対応していない場合に表示される代替コンテンツ
24            ユーザーはリンクをクリックしてPDFをダウンロードできる
25        -->
26        <p>お使いのブラウザはPDFの埋め込みに対応していません。代わりに<a href="sample.pdf">PDFファイルをダウンロード</a>してください。</p>
27    </object>
28
29    <p>
30        <strong>注意:</strong> このサンプルをローカルでテストする場合、「sample.pdf」という名前のPDFファイルをこのHTMLファイルと同じディレクトリに配置するか、
31        <code>data</code>属性のパスを実際のPDFファイルのパスに置き換える必要があります。
32    </p>
33</body>
34</html>

HTMLのobject要素は、ウェブページ内に画像、音声、動画、PDFファイルなど、様々な種類の外部コンテンツを埋め込むために使用されます。この要素は、ウェブブラウザが埋め込みオブジェクトを直接表示する機能を提供します。

サンプルコードでは、object要素を用いて「sample.pdf」というPDFファイルをウェブページ内に表示する例を示しています。data属性には埋め込むコンテンツのURL(この場合はPDFファイルのパス)を指定し、type属性にはそのコンテンツの種類を示すMIMEタイプ(PDFの場合はapplication/pdf)を指定します。さらに、width属性とheight属性で埋め込んだコンテンツの表示サイズをピクセル単位で設定しています。

object要素自体に直接的な「引数」や「戻り値」という概念はありませんが、その振る舞いや表示内容を制御するための手段として、これらの「属性」が重要な役割を果たします。object要素の内部に記述された内容は、もしユーザーのブラウザが埋め込みコンテンツの表示に対応していない場合に、代替コンテンツとして表示されます。このサンプルでは、PDFをダウンロードするためのリンクが代替コンテンツとして提供されており、ユーザー体験を損なわない工夫がされています。

このコードをローカルで試す際には、「sample.pdf」という名前のPDFファイルをHTMLファイルと同じ場所に置くか、data属性のパスを実際のPDFファイルの場所に合わせて修正する必要があります。このようにobject要素を使うことで、外部ファイルをウェブページに組み込み、多様な情報をユーザーに提供することが可能です。

data属性のファイルパスは、実際に埋め込むPDFファイルのパスと一致させてください。ローカルで試す際は、HTMLファイルと同じ場所にPDFを置くなど、適切な配置が必要です。type属性には埋め込むコンテンツのMIMEタイプ(PDFならapplication/pdf)を正しく指定し、ブラウザが適切に処理できるよう注意してください。object要素の内側の記述は、ブラウザが埋め込みに対応しない場合の代替コンテンツです。ユーザーが閲覧できない場合に備え、ダウンロードリンクなどを提供すると親切です。object要素は多用途ですが、ブラウザやデバイス環境によっては表示が不安定な場合があります。ユーザー体験を考慮し、代替手段の提供も検討することをお勧めします。

関連コンテンツ

関連IT用語

関連プログラミング言語