ユニシンク/開発ブログ

Category : HTML5

<picture>要素でレスポンシブwebデザイン

マルチデバイス対応サイトを作る際に悩みがちなのが画像の扱い。

各デバイスに最適化してものを用意しないとサイト全体のデータ容量が大きくなってしまい、ユーザビリティ的にもSEO的にも良くありません。

デバイスごとに表示させる方法はjavascriptを用いた方法、CSSを用いた方法などいくつかのやり方がありますが、<picture>タグを用いればJSもCSSも使わずシンプルに実現させることが可能です。

 

例:

<picture>
<source media=”(min-width:499px)” srcset=”images/textPC.gif” />
<img src=”images/textSP.gif” alt=”食生活は、主食、主菜、副菜が基本。食事のバランスを大切に。”/>
</picture>

 


PC向け表示

食生活は、主食、主菜、副菜が基本。食事のバランスを大切に。
 


スマホ向け表示
食生活は、主食、主菜、副菜が基本。食事のバランスを大切に。
 


上記例ではwidthが499ピクセル以上のデバイス上ではPC向けの画像(1行表示)の「textPC.gif」が表示され、それ以下のサイズのデバイスではスマホ向けの画像(2行表示)の「textSP.gif」が表示されます。
 
 

とても便利な<picture>要素ですが、デフォルトではIEには対応していません(お約束)。

IEに対応させるには対応するJSが必要です。

対応するJSをこちらからダウンロードしてください

picturefill.js

ダウンロードしたフォルダから「picturefill.js」、または「picturefill.min.js」のどちらかをコピーし、任意の場所に格納し、<head>~</head>内に記述すれば準備完了です。

<script src=”js/picturefill.js”></script>

広告 :

風俗顧客管理システム阿修羅

Unithink

ウェブ制作、グラフィックデザイン、広告制作のユニシンク。
価値のあるウェブサイトを制作し、集客UP、売上UPを目指します。

Copyright © 2019 Unithink All Rights Reserved.