Get to know MDN better
このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2016年3月.
HTMLImageElement の sizes プロパティによって、メディア条件のリストごとに、画像のレイアウト幅を指定することができます。これにより、様々なメディア条件に合わせて文書の状態が変化したときに、異なる画像(方向やアスペクト比の異なる画像も含む)を自動的に選択する機能が提供されます。
それぞれの条件は、メディアクエリーで使われているのと同じ条件指定の形式を使用します。
カンマで区切られたソースサイズ記述子のリストと、オプションで代替サイズを含む文字列。それぞれのソースサイズ記述子は、メディア条件、 1 つ以上のホワイトスペース文字、そしてメディア条件が true と評価されたときに画像に使用するソースサイズ値で構成されます。
それぞれのソースサイズ記述子は、メディアクエリー規格で定義されるメディア条件から構成される。ソースサイズ記述子は、ページのレイアウト中に画像に使用する幅を指定するために使用されるので、メディア条件は通常、幅の情報のみに基づきます(必ずしもそうとは限りません)。メディア条件の構築方法の詳細は、メディアクエリーの使用の構文を参照してください。
ソースサイズの値は CSS の <length> です。フォントと相対的な単位 (em や ex など)、絶対的な単位 (px や cm など)、または vw という単位を使って指定することができ、ビューポート幅に対する割合(1vw はビューポート幅の 1%)で指定することができます。
メモ: ソースサイズ値は、コンテナーサイズに対するパーセント値として指定してはいけません。つまり、50% や 100% といった長さの指定は、指定した値が何に対するパーセント値であるかが不明確になるため、許されません。
この例では、ブログ風のレイアウトを作成し、テキストと画像を表示します。画像は、ウィンドウの幅に応じて 3 つのサイズポイントが指定されています。画像も 3 種類用意し、それぞれの幅を指定しています。ブラウザーはこれらの情報をすべて受け取り、指定された値に最も合う画像と幅を選択します。
画像がどのように使われるかは、ブラウザーやユーザーのディスプレイの画素密度に依存する場合があります。
この例の下にあるボタンで、実際に sizes プロパティを少し変更し、画像の 3 つの幅のうち最大のものを 40em と 50em の間で切り替えています。
JavaScript のコードでは、 3 つ目の幅のオプションを 40em と 50em の間で切り替えることができる 2 つのボタンを処理しています。これは click イベントを処理することで、 JavaScript 文字列オブジェクトの replace() メソッドを使って sizes 文字列の該当部分を置換して実現しています。
このページは独自のウィンドウで見るほうが、大きさを完全に調整できるので適しています。
| HTML # dom-img-sizes |
Enable JavaScript to view this browser compatibility table.
This page was last modified on 2025年11月9日 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.