リファレンス

<img>要素の使い方・サンプルコード

Sara

<img>

<img>要素は、PNG, JPEG, GIF, SVG などの画像ファイルを表示するために使用します。

デモ:<image> 要素

sample

 
 

使用できる画像ファイルの形式

以下の画像ファイルを使用することができます。

  • APNG(.apng)
  • BMP (.bmp)
  • GIF(.gif)
  • ICO(.ico, .cur)
  • JPEG(.jpg, .jpeg, .jfif, .pjpeg, .pjp)
  • PNG(.png)
  • SVG(.svg)
  • WebP(.webp)

APNG・WebP 形式について
APNG は Internet Explorer で使用不可、WebP は Edge と Internet Explorer で使用不可となっています。

 
 

属性

src

画像ファイルのパスを指定する必須の属性です。

<img src="sample.png" width="100" height="100">

 
 

alt

画像の内容を説明する代替テキストで、画像が表示できない時に代わりに表示されます。
alt 属性を空にしたり指定しない場合は、そのページにおいて画像が重要ではないことを示します。

<img src="dog.png" alt="犬の画像">

 
 

crossorigin

オリジンをまたいでリクエストを送信する CORS (Cross-Origin Resource Sharing) で画像を取得する場合に、ユーザ認証を必要とするかどうかを指定します。

CORS を有効にすると <canvas> 要素で画像が利用できるようになります。

anonymous(初期値) ユーザ認証は不要
use-credentials Cookie, 証明書などの送信が必要

 
 

decoding

画像のデコード方式をブラウザに指示します。

auto(既定値) ブラウザが自動的にデコード方式を選択します。
async コンテンツの表示に遅れがないように画像を非同期デコードします。
sync 画像を同期デコードします。

 
 

height

画像の高さをピクセル値で指定します。値に単位はつけません。

<img src="sample.png" width="100" height="100">

 
 

ismap

サーバーサイドのイメージマップを指定します。クリック位置の座標 (x, y) をサーバーに送信します。
 
 

sizes

srcset 属性で指定した画像ファイルからどの画像を表示するかをブラウザが選択するときに使います。srcset 属性がない場合は sizes 属性を書いても無効になります。

sizes 属性の値は、画像を表示する条件を表すメディア条件と、条件に一致したときの画像サイズで指定します。

<img src="img/320.png" 
    srcset="img/1024.png 1024w,
            img/640.png 640w,
            img/320.png 320w"
    sizes="(max-width: 320px) 200px,
            (max-width: 640px) 400px,
            800px">

 

このコードの場合

  • ビューポートの幅が 320px 以下の場合は 200px で img/320.png
  • ビューポートの幅が 640px 以下の場合は 400px で img/640.png
  • 上記2つの条件に一致しなかった場合は 800px で img/1024.png

が表示されます。

複数のメディア条件を付与する場合は ,(カンマ)で区切ります。

最後の画像サイズにはメディア条件を付与しません。このサイズはメディア条件が成立しない場合に使用される既定値になります。
 
 

srcset

ブラウザのスクリーンサイズやピクセル比によって表示する画像を切り替える場合に、画像 URL を指定します。

切り替える条件は「幅記述子」または「ピクセル密度記述子」で指定することができます。
 

幅記述子で切り替える場合

幅記述子で記述すると、ユーザーのビューポート(ブラウザ)幅によって画像の切り替えポイントを指定することができます。

<img src="small.png"
    srcset="large.png 1024w,
            medium.png 640w,
            small.png 320w">

 

このコードでは

  • 幅が 320 の場合は small.png
  • 幅が 640 の場合は medium.png
  • 幅が 1024 の場合は large.png

と切り替えることができます。

複数の画像を指定する場合は ,(カンマ)で区切ります。
 
 

ピクセル密度記述子で切り替える場合

ピクセル密度記述子で記述すると、ユーザーのビューポート(ブラウザ)の解像度よって画像の切り替えポイントを指定することができます。

ピクセル密度で切り替える場合は「数値 + x」と書きます。

<img src="icon.png"
    srcset="icon@2x.png 2x, icon@3x.png 3x">

 

アイコンやロゴ画像を指定する際によく使われる指定方法です。

src 属性に指定した画像は 1x の場合に表示され、高解像度の端末では srcset に指定した画像が読み込まれます。
 
 

width

画像の幅をピクセル値で指定します。値に単位はつけません。

<img src="sample.png" width="100" height="100">

 
 

usemap

イメージマップを利用する場合に、関連づけたいイメージマップの名前を指定します。
usemap の値は <map> 要素の name 属性と一致させ、先頭に # を付けます。

<map name="sample">
  <area shape="rect" coords="0, 0, 100, 100" href="https://sample.com" alt="Top left">
</map>
<img usemap="#sample" src="image.png" alt="Image" width="200" height="200" />

 
参考:<map>と<area>要素を使ったイメージマップの作り方
 
 

グローバル属性

全ての HTML 要素に共通して使用できるグローバル属性はこちら
 
 
 

使用例

<img src="img/320.png" alt="様々な画像サイズのテスト" 
    srcset="img/1024.png 1024w,
            img/640.png 640w,
            img/320.png 320w"
    sizes="(max-width: 320px) 200px,
            (max-width: 640px) 400px,
            800px">

 
 
 

対応ブラウザ

 
 
 

関連するタグ

 

HTML タグ一覧はこちら

guest

CAPTCHA


0 Comments
Inline Feedbacks
View all comments
ABOUT ME
Sara
Sara
運営者
書籍やオンライン講座でプログラミングを勉強してフリーランスのプログラマーになりました。
このサイトでは「わかりやすく・シンプル」をモットーに、プログラミングの基礎からアプリ開発まで紹介します。
独学でプログラミングを勉強をしている方、基礎は勉強したけれど次に何をすれば良いか分からない...という方のお役に立てるサイトを目指しています。
0
この記事にコメントするx
記事URLをコピーしました