デバイスのビューエリアや解像度でスタイルを切り替える方法

web

デバイスやビューのエリアサイズでスタイルを切り替える

サイズの指定には以下の4種類が用意されています。

属性説明
max-widthビューエリアの最大値
min-widthビューエリアの最小値
max-device-widthデバイスエリアの最大値
min-device-widthデバイスエリアの最小値

指定時はこれらを組み合わせてエリアサイズごとのスタイルの指定をします。

media screen and (min-width : 768px){
  /*ビューエリアの横幅768pxまでのスタイル*/
}
@media screen and (min-width : 1024px) {
  /*ビューエリアの横幅1024pxまでのスタイル*/
}

ビューエリアとデバイスエリアの補足

ビューエリアはその時点のサイズなのに対し、デバイスエリアはデバイスのサイズです。 スマートフォンを横向きにしてサイズが横長になった場合、ビューエリアのスタイルは切り替わりますがデバイスエリアのスタイルは切り替わらない違いがあります。

デバイスの解像度でスタイルを切り替える

webkitでdevice-pixel-ratioを、将来的な記述としてresolutionを指定します。
デバイスピクセル値は{1,1.5,2,3}などが想定されます。

media (-webkit-min-device-pixel-ratio: 1.5), /* Webkit */
       (min-resolution: 1.5dppx)              /* The Future */
  /*高解像時のスタイル*/
}

横向きと縦向きでスタイルを切り替える

リキッドレイアウトであれば縦横を切り替えても基本的に問題ありません。
そうでない場合や、あえて縦・横で違うコンテンツにする場合、orientationプロパティを使います。

*横向きの場合*/
@media screen and (orientation: portrait) {
  /*横向きのスタイル*/
}
 
/*縦向きの場合*/
@media screen and (orientation: landscape) {
  /*縦向きのスタイル*/
}
eyecatch

デバイスごとの解像度差をdevicePixelRatioで調整する方法

eyecatch

リセットCSSでブラウザ間差異をなくそう

ウェブサイトの記事

eyecatch

ウェブサイトに使われる一般的な文字フォント一覧

eyecatch

ウェブサイトの需要と供給から考えるアクセスアップ

eyecatch

サイトを毎日更新する意味はシステム的にはない

eyecatch

絶対URLと相対URL

eyecatch

PCサイトとスマホサイトの違い

eyecatch

httpとhttpsの違い

ウェブサイトの記事一覧HOME