B.picture要素、source要素、media属性

Webデザイン

カテゴリー: レスポンシブ画像  閲覧数:556 配信日:2015-08-17 19:47





B方式.pictureタグ + sourceタグ(media属性 srcset属性) + imgタグ(srcset属性)


画像のアートディレクション
アートディレクションによる選択
→ 表示される画面に応じて画像を出し分け
→ ウィンドウサイズに合わせて画像を切り替え
・pictureタグ
・sourceタグmedia属性、sourceタグsrcset属性
・imgタグsrcset属性、もしくは、imgタグsrc属性


具体例1
・ウィンドウサイズが 1200px 以上なら 1200w.png 読込
・ウィンドウサイズが 1000px 以上なら 1000w.png 読込
・ウィンドウサイズが 800px 以上なら 800w.png 読込
・ウィンドウサイズが 600px 以上なら 600w.png 読込
・ウィンドウサイズが 400px 以上なら 400w.png 読込
・ウィンドウサイズが 200px 以上なら 200w.png 読込
・上記以外(ウィンドウサイズが 200px 未満)なら img srcset で指定した内容(800w.png) 読込
<picture>
 <!--[if IE 9]><video style="display: none;"><![endif]-->
 <source srcset="./img/1200w.png" media="(min-width: 1200px)">
 <source srcset="./img/1000w.png" media="(min-width: 1000px)">
 <source srcset="./img/800w.png" media="(min-width: 800px)">
 <source srcset="./img/600w.png" media="(min-width: 600px)">
 <source srcset="./img/400w.png" media="(min-width: 400px)">
 <source srcset="./img/200w.png" media="(min-width: 200px)">
 <!--[if IE 9]></video><![endif]-->
 <img srcset="./img/800w.png" alt="CSSデモ">
</picture>


動作確認
・成功


C方式.srcset属性 x記述子


ピクセル密度デスクリプタ(1x、1.5x、2x、3x など)を使用
Retina対応
→ 高解像度のディスプレイをサポート
→ Retinaディスプレイ用に画像を切り替え
・「imgタグsrcset属性 x記述子」 もしくは 「sourceタグsrcset属性 x記述子」

上記に「pictureタグ × sourceタグ」が加わる場合もあり
・つまり「srcset属性 x記述子」がある場合は、常にC方式
※「B方式」でかつ「C方式」なケースもあり得ると言うこと!

動作確認
・Retinaディスプレイを保持していないため未検証

週間人気ページランキング / 4-18 → 4-24
順位 ページタイトル抜粋 アクセス数
1 16進数カラーコード / 2進数 25
2 Windows10で「Google Chrome」が常に最前面に表示される。「アクティブウィンドウ」が最前面で表示されない → 解決方法存在しない | Google Chrome(ブラウザ) 13
2 「マウスオーバー」「ロールオーバー」「ホバー」の違い | CSS 13
2 「Font Awesome 4」と「Font Awesome 5」の違い(Font Awesome バージョン4からのアップグレード) | Font Awesome(フォント) 13
3 Chromeデベロッパーツールで、スマホソースコードを確認したいが、USBデバッグ機能をどうしても有効にすることが出来ない | モバイルデザイン(デザイン) 11
4 RGB ⇔ Lab | 色変換(色) 10
5 血の色 / #b30000 / #360800 / #ff0000 | カラーコード(色) 9
6 Design 0 8
7 「Chrome拡張機能」開発中に遭遇したエラー | Chrome 拡張機能 7
8 「bgcolor」「background-color」「background」の違い | CSS 4
8 「z-index」効果を打ち消すスタイルシートは、「z-index:auto;」 4
8 Chrome でキャッシュを効かさない | Google Chrome(ブラウザ) 4
8 max-width: 100%の効果を打ち消すには、max-width: none; | CSS 4
9 「line-height」効果を打ち消すスタイルシートは、「line-height:normal; 3
9 「群青色」「瑠璃色」「ウルトラマリンブルー」の違い 3
10 iframe経由で読み込んでいるページへ直接アクセスした場合は、トップページへリダイレクト | HTML5(HTML) 2
10 ユーザー個別の設定情報が格納されているレジストリキーを削除 2
10 カラーコード / 色コード | カラーコード(色) 2
10 CSSで出来ないこと | CSS 2
10 RGBの種類 / ビットカラー | RGB(色) 2
2024/4/25 1:01 更新
指定期間人気ページランキング / 2020-5-30 → 2024-4-24
順位 ページタイトル抜粋 アクセス数
1 RGB ⇔ Lab | 色変換(色) 8129
2 「マウスオーバー」「ロールオーバー」「ホバー」の違い | CSS 4352
3 血の色 / #b30000 / #360800 / #ff0000 | 色 3484
4 Design 0 3403
5 RGBの種類 / ビットカラー | RGB(色) 2443
6 Windows10で「Google Chrome」が常に最前面に表示される。「アクティブウィンドウ」が最前面で表示されない → 解決方法存在しない | Google Chrome(ブラウザ) 2350
7 「bgcolor」「background-color」「background」の違い | CSS 1773
8 コズミックブルーが何色か分からない | 色 1697
9 金融機関ブランドカラー / コーポレートカラー | カラーコード(色) 1696
10 「:hover」「z-index」を組み合わせて使用すると、正常動作しないことがある | z-index(CSS) 1526
11 「属性」「プロパティ」「アトリビュート」の違い | CSS 1524
12 「Bootstrapデザイン」✕「グラフ」 | 2系(Bootstrap) 1457
13 「Font Awesome 4」と「Font Awesome 5」の違い(Font Awesome バージョン4からのアップグレード) | Font Awesome(フォント) 1421
14 16進数カラーコード / 2進数 1405
15 Chrome でキャッシュを効かさない | Google Chrome(ブラウザ) 1227
16 HSLとHSVの違い | 色変換(色) 1130
17 使用していないCSSをチェックする、標準的な方法を知りたい | CSS 1008
18 黒体 / 色温度 / D65(6500K)/ D50(5000K)/ K | 色 965
19 「:after擬似要素」は、Chromeの「要素を検証」で確認できない | 擬似(CSS) 956
20 GIFアニメーション | 画像 912
2024/4/25 1:01 更新