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

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

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

作成日: 更新日:

基本的な使い方

paramオブジェクトは、Webページに埋め込まれた外部コンテンツ、特に<object>要素で指定されたプラグインやアプレットに対し、動作に必要な設定情報や初期値を渡すためのオブジェクトです。このオブジェクトは、必ず親要素である<object>要素の子要素として配置され、単独で機能することはありません。

具体的には、name属性で設定するパラメータの名前を指定し、value属性でそのパラメータの値を設定します。例えば、かつてはFlashムービーやJavaアプレットといったプラグインコンテンツの再生設定、表示モード、あるいは初期状態などを細かく制御するために利用されていました。paramオブジェクト自体がWebページ上に直接表示されることはなく、あくまで埋め込みコンテンツへの見えない指示として機能します。

現代のWeb開発においては、FlashやJavaアプレットの使用頻度が大幅に減少したことや、動画には<video>要素、別のWebページには<iframe>要素など、特定のコンテンツ埋め込みに特化した新しいHTML要素が普及したことにより、paramオブジェクトを直接使用する機会は少なくなっています。しかし、汎用的な埋め込みオブジェクトに設定を適用するという、その基本的な役割はHTML Living Standardの仕様として引き続き存在しています。

公式リファレンス: <param>: The Object Parameter element

構文(syntax)

1<object data="resource.data" type="application/some-type">
2  <param name="parameterName" value="parameterValue">
3</object>

引数(parameters)

引数なし

引数はありません

戻り値(return)

戻り値なし

戻り値はありません

サンプルコード

HTML param要素でオブジェクトにパラメータを設定する

1<!DOCTYPE html>
2<html lang="ja">
3<head>
4    <meta charset="UTF-8">
5    <title>HTML param要素のサンプル</title>
6</head>
7<body>
8    <h1>HTML param要素の使用例</h1>
9    <p>
10        <code>&lt;param&gt;</code>要素は、<code>&lt;object&gt;</code>要素に埋め込まれた外部リソース(プラグインなど)に
11        設定パラメータを渡すために使用されます。
12    </p>
13
14    <!-- object要素は、外部リソースをページに埋め込むためのコンテナです -->
15    <object data="media/sample.swf" type="application/x-shockwave-flash" width="400" height="300">
16        <!-- param要素は、親のobject要素に埋め込まれたオブジェクトへパラメータを渡します -->
17        <!-- name属性でパラメータ名を、value属性でその値を指定します -->
18        <param name="movie" value="media/sample.swf">           <!-- ロードするFlashファイルのパスをオブジェクトに指示 -->
19        <param name="quality" value="high">                     <!-- Flashの表示品質を高に設定 -->
20        <param name="allowScriptAccess" value="always">         <!-- 埋め込みFlashからのスクリプトアクセスを許可 -->
21
22        <!-- object要素の内容は、オブジェクトがロードできない場合の代替コンテンツとして表示されます -->
23        <p>お使いのブラウザはこのオブジェクトを表示できません。Flash Playerが必要です。</p>
24    </object>
25</body>
26</html>

HTMLのparam要素は、ウェブページに外部リソースを埋め込むためのobject要素と組み合わせて使用される要素です。その主な役割は、object要素によってページにロードされた外部コンテンツ(例えば、FlashコンテンツやJavaアプレットなど)に対して、必要な設定パラメータを渡すことです。

このparam要素自体には、プログラミング言語における関数のような直接的な引数や戻り値は定義されていません。代わりに、param要素はname属性とvalue属性を持ち、これらを通じて「パラメータの名前」とその「値」をセットで外部リソースに引き渡します。これにより、埋め込まれたコンテンツの動作や表示方法を細かくカスタマイズすることが可能になります。

サンプルコードでは、object要素でFlashファイルを埋め込み、そのFlashコンテンツに対してparam要素で設定を渡しています。具体的には、name="movie"で読み込むFlashファイルのパスを、name="quality"で表示品質を、name="allowScriptAccess"でスクリプトのアクセス許可などを設定しています。

このようにparam要素は、外部のコンテンツをページ内で適切に動作させたり、意図した通りの表示を行わせたりするための、重要な設定手段として機能します。

param要素は、必ずobject要素の子要素として使用します。単独では機能せず、object要素が埋め込む外部リソースに、name属性でパラメータ名を、value属性でその値を渡す役割があります。現代のWeb開発では、Flashなどのプラグインを利用するobject要素自体の使用が減少傾向にあり、ほとんどのブラウザでFlashはサポートされていません。そのため、この要素を使用する機会は非常に限られています。埋め込むリソースが要求する特定のパラメータを設定する場合にのみ利用し、現在のWeb標準に準拠した代替技術(例:videoaudioiframe要素やJavaScriptによるAPI)の利用を検討することが重要です。

HTML param要素でオブジェクトにパラメータを渡す

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>param 要素のサンプル</title>
7</head>
8<body>
9    <h1>param 要素によるパラメータ受け渡し</h1>
10
11    <!-- 
12        object要素は、外部コンテンツ(例: Flashアニメーション、Javaアプレット)を埋め込みます。
13        param要素は、そのobject要素に設定パラメータを渡すために使用される子要素です。
14        これは、外部コンテンツの動作や表示方法を制御するために重要です。
15    -->
16    <object data="media/default_content.swf" type="application/x-shockwave-flash" width="400" height="300">
17        <!-- 'movie'パラメータで、埋め込むFlashコンテンツのソースファイルを指定 -->
18        <param name="movie" value="media/my_animation.swf">
19        <!-- 'quality'パラメータで、Flashコンテンツの表示品質を設定 -->
20        <param name="quality" value="high">
21        <!-- 'autoplay'パラメータで、コンテンツが自動的に再生されるか設定 -->
22        <param name="autoplay" value="true">
23        
24        <!-- object要素が表示できない場合の代替コンテンツ -->
25        <p>お使いのブラウザは埋め込みコンテンツを表示できません。</p>
26        <p>注意: Flashは現代のウェブでは非推奨技術です。このコードは`param`要素の動作原理を示すものです。</p>
27    </object>
28</body>
29</html>

param要素は、主にobject要素の子要素として使用され、その親要素に埋め込まれる外部コンテンツ(例えば、FlashアニメーションやJavaアプレットなど)に対して、動作や表示を制御するための設定情報を渡す役割を持っています。この要素を使うことで、外部コンテンツの特定の機能を有効にしたり、表示方法をカスタマイズしたりすることが可能になります。

param要素自体には、直接の引数や戻り値はありません。これは、paramが情報を「提供する側」の要素であり、親要素であるobjectがその情報を受け取って内部で処理するためです。具体的には、name属性でパラメータの名前を、value属性でその設定値を指定します。

サンプルコードでは、object要素の中に複数のparam要素が記述されています。ここではFlashアニメーションを埋め込む例として、movieという名前で表示するFlashファイルのパスを、qualityという名前で表示品質を、autoplayという名前で自動再生するかどうかといった設定値を渡しています。これにより、埋め込まれる外部コンテンツの振る舞いを細かく制御できるのです。なお、Flashは現在では非推奨の技術ですが、このコードはparam要素の基本的な動作原理を理解するためのものです。

param要素は、親要素であるobject要素に埋め込まれた外部コンテンツへ設定パラメータを渡すために使用されます。この要素は単独では機能せず、必ずobject要素の子要素として配置する必要があります。name属性でパラメータの名前を、value属性でその値を指定します。

しかし、サンプルコードで用いられているFlashなど、object要素による外部コンテンツの埋め込み技術は、セキュリティや互換性の問題から、現代のウェブ開発ではほとんど使用されなくなりました。そのため、param要素も実際に利用する機会は非常に稀です。現在では、動画には<video>要素、音声には<audio>要素、外部ページには<iframe>要素など、それぞれ専用の要素を用いるのが一般的であることをご留意ください。このサンプルはparam要素の基本的な動作原理を理解するための一例として捉えてください。

関連コンテンツ

関連IT用語

関連プログラミング言語