背景と色

Revised: Jun./4th/2004

color

プロパティ 'color' は、セレクタにマッチした対象の前景色を指定します。文字列を内容とする場合は、文字色の指定になります。

プロパティ 'color'
プロパティ名
color<color> | inherit

'color' は子要素に継承されます。デフォルトの値は、ユーザエージェントに依存します。inherit は、親要素の値を明示的に継承する指定です。<color> には、16 色の色名か、数字による指定が可能です。

32 ビットの RGB 色表現
#000000black #800000maroon #008000green #000080navy
#c0c0c0silver #ff0000red #00ff00lime #0000ffblue
#808080gray #800080purple #808000olive #008080teal
#ffffffwhite #ff00fffuchsia #ffff00yellow #00ffffaqua

パソコンのモニタは、 RGB の各々を 0-255 までの 256 段階(2の8乗)で調節し、これを組み合わせて色を表現しています。これは通常トゥルーカラーと呼ばれます。

1 色当たり 256 段階が 3 色で 256*256*256 = 16777216 色。1 色当たり 16 段階に落としたものをハイカラーと呼び、 16*16*16 = 4096 色表示できます。 CSS の 16 進数表示(16*16 = 256)は、これに対応します。

色の 10 進数と 16 進数と比率表現
16進数10進数%
00-ff0-2550.0%-100.0%
#rrggbbrgb(rrr,ggg,bbb)rgb(rr%,gg%,bb%)
#000000rgb(0,0,0)rgb(0%,0%,0%)
#003300rgb(0,51,0)rgb(0%,20%,0%)
#ffffffrgb(255,255,255)rgb(100%,100%,100%)
websafecolor
16進数00336699ccff #rrggbb
10進数051102153204255 rgb(rrr,ggg,bbb)
%0%20%40%60%80%100% rgb(r%,g%,b%)

プロパティ 'color' の例:

/* body 要素の前景色(文字色など)が黒 */
body { color: black }

/* h1 要素の前景色が赤 */
h1 { color: red }

/* p 要素の前景色が濃いグレー */
p { color: #333 }

/* strong 要素の前景色は親要素の値を継承 */
strong { color: inherit }

background-color

プロパティ 'background-color' は、セレクタにマッチした対象の背景色を指定します。

プロパティ 'background-color'
プロパティ名
background-color<color> | transparent | inherit

'background-color' は子要素に継承されません。デフォルトの値は透明を意味する transparent です。親要素の色が透過します。inherit は、親要素の値を明示的に継承する指定です。<color> には、16 色の色名か、数字による指定が可能です。

プロパティ 'background-color' の例:

/* body 要素の背景色を黒、前景色を白 */
body { color: white;
	background-color: black }

前景色と背景色は、同時に指定するようにしましょう。

background-image

プロパティ 'background-image' は、セレクタにマッチした対象の背景画像を指定します。

プロパティ 'background-image'
プロパティ名
background-image<uri> | none | inherit

'background-image' は子要素に継承されません。デフォルトの値は、画像が存在しないことを意味する none です。inherit は、親要素の値を明示的に継承する指定です。<uri> には、画像の URI を指定します。CSS ファイルからの相対 URL か、絶対 URL を指定します。

プロパティ 'background-image' の例:

/* body 要素の背景色を黒、前景色を白、
   背景画像は一つ上のディレクトリ内の cover.png  */
body { color: white;
	background-color: black;
	background-image: url(../cover.png) }

背景画像を指定するときは、背景色も同時に指定するようにしましょう。背景画像が得られない場合は、背景色で表示され、背景画像が得られる場合は、背景色の上に画像が乗ることになります。

後で紹介する省略プロパティ 'background' を使えば、次のように指定できます:

/* body 要素の背景色を黒、前景色を白、
   背景画像は一つ上のディレクトリ内の cover.png  */
body { color: white;
	background: black url(../cover.png) }

background-repeat

プロパティ 'background-repeat' は、セレクタにマッチした対象の背景画像の繰り返し方法を指定します。

プロパティ 'background-repeat'
プロパティ名
background-repeatrepeat | repeat-x | repeat-y | no-repeat | inherit

'background-repeat' は子要素に継承されません。デフォルトの値は、縦横方向に繰り返される repeat です。inherit は、親要素の値を明示的に継承する指定です。繰り返さない場合は no-repeat、横方向にだけ繰り返すには repeat-x、縦方向にだけ繰り返すには repeat-y を指定します。

プロパティ 'background-repeat' の例:

/* body 要素の背景色を黒、前景色を白、
   背景画像は一つ上のディレクトリ内の cover.png、
   背景画像は縦方向にだけ繰り返す  */
body { color: white;
	background-color: black;
	background-image: url(../cover.png);
	background-repeat: repeat-y }

background-attachment

プロパティ 'background-attachment' は、セレクタにマッチした対象の背景画像のスクロール方法を指定します。

プロパティ 'background-attachment'
プロパティ名
background-attachmentscroll | fixed | inherit

'background-attachment' は子要素に継承されません。デフォルトの値は、文書のスクロールと一緒にスクロールする scroll です。inherit は、親要素の値を明示的に継承する指定です。前景物のスクロールに対して背景画像をウィンドウに固定するには fixed を指定します。

プロパティ 'background-attachment' の例:

/* body 要素の背景色を黒、前景色を白、
   背景画像は一つ上のディレクトリ内の cover.png、
   背景画像は縦方向にだけ繰り返す、
   背景はウィンドウに対して固定してスクロールしない  */
body { color: white;
	background-color: black;
	background-image: url("../cover.png");
	background-repeat: repeat-y;
	background-attachment: fixed }

background-position

プロパティ 'background-position' は、セレクタにマッチした対象の背景画像の位置の初期値を指定します。

プロパティ 'background-position'
プロパティ名
background-position[ [<percentage> | <length> ]{1,2} | [ [top | center | bottom] || [left | center | right] ] ] | inheri

'background-position' は子要素に継承されません。デフォルトの値は、文書の左上端を意味する 0% 0% です。inherit は、親要素の値を明示的に継承する指定です。

'background-position'プロパティの値は一つ、或は二つとります。

二つ取る場合
一つ目の値が左右、二つ目の値が上下を指定します。
一つ取る場合
左右の値と解釈され、上下は中央に表示されます。

値に許されるキーワードの意味は次のようになります。

top
画像の上端と、パッディング領域を含めた要素の上端が重なる指定です。単独で指定した場合、水平方向の位置は center と解釈されます。
left
画像の左端と、パッディング領域を含めた要素の左端が重なる指定です。単独で指定した場合、垂直方向の位置は center と解釈されます。
center
垂直方向としては、画像の縦方向の真ん中と、パッディング領域を含めた要素の縦方向の真ん中が重なるように表示されます。水平方向としては、画像の横方向の真ん中と、パッディング領域を含めた要素の真ん中が重なります。単独で指定した場合は、縦横双方に付いて center が指定されている基と解釈され、画像の中心と要素の中心が重なるように表示されます。
<length>
画像の左上端と、パッディング領域を含めた要素の左上端とのずれの大きさを指定します。
相対値指定の単位
  • em: フォントの大きさ
  • ex: 小文字の高さ
  • px: ピクセル
絶対値指定の単位
  • in: インチ。2.54 cm
  • cm: センチメートル
  • mm: ミリメートル
  • pt: ポイント。1/72 インチ
  • pc: ピカ。12 ポイント
<percentage>
レンダリングが可能な矩形領域の高さと幅に対する比率をパーセントで指定します。

プロパティ 'background-position' の例:

/* body 要素の背景色を黒、前景色を白、
   背景画像は一つ上のディレクトリ内の cover.png、
   背景画像は縦方向にだけ繰り返す、
   背景はウィンドウに対して固定してスクロールしない、
   背景画像の初期位置は中央  */
body { color: white;
	background-color: black;
	background-image: url(../cover.png);
	background-repeat: repeat-y;
	background-attachment: fixed;
	background-position: center }

background

プロパティ 'background' は、背景指定の省略化プロパティです。

プロパティ 'background-attachment'
プロパティ名
background-attachment [<'background-color'> || <'background-image'> || <'background-repeat'> || <'background-attachment'> || <'background-position'>] | inherit

'background' は子要素に継承されません。デフォルトの値は、未定義です。inherit は、親要素の値を明示的に継承する指定です。

プロパティ 'background' の例:

/* body 要素の背景色を黒、前景色を白、
   背景画像は一つ上のディレクトリ内の cover.png、
   背景画像は縦方向にだけ繰り返す、
   背景はウィンドウに対して固定してスクロールしない、
   背景画像の初期位置は中央  */
body { color: white;
	background: black url("../cover.png") repeat-y fixed center }

不要な指定は必要ありません。例えば、次のように指定することが可能です。

/* 背景色を黒、背景画像は"../cover.png" */
body { color: white;
	background: black url(../cover.png) }