CSSの基礎知識
メディアタイプとメディアクエリ
CSSを出力デバイス別に指定するには「メディアタイプ」を指定します。また、CSS3からはデバイスの種類をより具体的に指定できる「メディアクエリ」が定義されました。
メディアタイプの種類
| キーワード | デバイスの種類 |
|---|---|
| all | すべてのデバイス |
| braille | 点字用ディスプレイ |
| embossed | 点字用プリンター |
| handheld | モバイルデバイス |
| プリンター | |
| projection | プロジェクター |
| screen | ディスプレイ |
| speech | 音声出力デバイス |
| tty | 固定幅フォントで出力するデバイス |
| tv | テレビ |
以下の例では、link要素でCSSを組み込むときにmedia属性で該当するメディアを指定しています。テレビ用には「tv.css」が、プリンター用には「print.css」が組み込まれます。
HTML<link href="tv.css" rel="stylesheet" type="text/css" media="tv"> <link href="print.css" rel="stylesheet" type="text/css" media="print">
メディアクエリの種類
| キーワード | 役割 |
|---|---|
| width | ディスプレイの幅。max-、min-の接頭辞で上限・下限を指定可。 |
| height | ディスプレイの高さ。max-、min-の接頭辞で上限・下限を指定可。 |
| device-width | 表示領域の幅。max-、min-の接頭辞で上限・下限を指定可。 |
| device-height | 表示領域の高さ。max-、min-の接頭辞で上限・下限を指定可。 |
| orientation | デバイスの向き。値は縦向きがportrait、横向きがlandscape。 |
| aspect-ratio | ディスプレイの縦横比。max-、min-の接頭辞で上限・下限を指定可。 |
| device-aspect-ratio | 表示領域の縦横比。max-、min-の接頭辞で上限・下限を指定可。 |
| color | カラーディスプレイの色のビット数。max-、min-の接頭辞で上限・下限を指定可。 |
| color-index | カラールックアップテーブルの数。max-、min-の接頭辞で上限・下限を指定可。 |
| monochrome | 白黒ディスプレイのビット数。カラーディスプレイの場合は「0」。max-、min-の接頭辞で上限・下限を指定可。 |
| resolution | ディスプレイの解像度。max-、min-の接頭辞で上限・下限を指定可。 |
| scan | メディアタイプがtvの場合の画面の走査方法。値はprogressive、またはinterlace。 |
| grid | ディスプレイの表示方法。メディアタイプがttyの場合は「1」。それ以外は「0」。 |
以下の例では、link要素でCSSを組み込むときにメディアクエリを指定しています。メディアタイプがモバイルデバイス(handheld)、またはディスプレイ(screen)でディスプレイの幅が20em以下の場合に、指定したスタイルが組み込まれます。
HTML<link rel="stylesheet" media="handheld and (min-width: 20em), screen and (min-width: 20em)">


