[4] [[CSS]] の [CODE(CSS)@en[[[rgba()]]]] [[関数]]は、 [[RGB値]]と[[α値]]を指定します。

* 仕様書

- [2] [CITE@en[CSS Color Module Level 3]] ([TIME[2011-06-07 21:54:38 +09:00]] 版) <http://www.w3.org/TR/2011/REC-css3-color-20110607/#rgba-color>

* [CODE(CSS)@en[rgba()]] 関数

[5] [CODE(CSS)@en[[[rgba()]]]] [[関数]]は、
- [6] [CODE(CSS)@en[rgba(]]
- [7] 3つの[[整数値]]または3つの[[百分率値]]を[[読点]]で区切ったもの
- [8] [[読点]]
- [9] [CODE(CSS)@en[[[<alphavalue>]]]]
- [10] [CODE(CSS)[[[)]]]]

... で構成されます。[[整数値]]や[[百分率値]]や [CODE(CSS)@en[[[<alphavalue>]]]]
の前後には[[空白]]を入れることができます。
[SRC[>>2]]

;; [11] [[CSS3]] [SRC[>>2]] はこの構文の説明が若干曖昧です。

[12] 最初の3つの[[数値]]は [[RGB]] を表すものであり、 [CODE(CSS)@en[[[rgb()]]]]
[[関数]]と同じです。

[13] 最後の[[数値]] ([CODE(CSS)@en[[[<alphavalue>]]]]) は[[α値]]、
つまり[[色]]の[RUBYB[[[不透明度]]]@en[opacity]]を表します。 [SRC[>>2]]

* 色空間

[14] [[装置]]の[[色域]]に応じた[[くりぬき]]を [CODE(CSS)@en[[[rgb()]]]]
[[関数]]同様に行わなければ[['''なりません''']] [SRC[>>2]]。

[15] [CODE(CSS)@en[[[<alphavalue>]]]] についても 0 から 1 までの値への[[くりぬき]]が行われます。


* 構文解析

[3]
[[Firefox]] 3 では、 [VAR[a]] の値が 1 以上なら[[構文解析]]時に
[CODE(CSS)@en[[[rgb]]()]] に置き換えられ、
0 以下なら[[構文解析]]時に 0 に置き換えられます。

[22] [[RGBA値]]に対応していない[[利用者エージェント]]は [[CSS]]
の[[先方互換構文解析規則]]に従って未対応の値であるとして扱うべきであって、
[[α値]]だけを無視してはなりません。 [SRC[>>2]]

;; [23] これって、 [CODE(CSS)@en[[[<alphavalue>]]]] が 1 (完全に[[不透明]])
のときだけ無視しなくて、それ以外は無視する、という実装でも良いのでしょうかね?

* 例

- [16] [CODE(CSS)@en[rgba(255,0,0,1)]]
- [17] [CODE(CSS)@en[rgba(100%,0%,0%,1)]]

[18] [CODE(CSS)@en[[[<alphavalue>]]]] の 1 は完全に[[不透明]]であることを表しており、
従ってこれらは [CODE(CSS)[rgb(255,0,0)]] や [CODE(CSS)[rgb(100%,0%,0%)]]
と[[等価]]であり、いずれも[[不透明]]な[[赤]]を表しています。 [SRC[>>2]]

- [20] [CODE(CSS)[rgba(0,0,255,0.5)]]

;; [[半透明]]の[[青]] [SRC[>>2]]

- [21] [CODE(CSS)[rgba(100%, 50%, 0%, 0.1)]]

;; ほとんど[[透明]]な[[オレンジ]] [SRC[>>2]]

* 関連

[19] [[α値]]を含まない場合は [CODE(CSS)@en[[['''#'''[VAR[rrggbb]]]]]] のような[[十六進数]]表現が使えますが、
[[α値]]付きの場合はそのような表現はありません。 [[CSS]] 以外では [CODE[[['''#'''[VAR[rrggbbaa]]]]]]
という表記方法が行われることもありますが、 [[CSS]] では認められていません。

* メモ

[1]
[CITE[Opacity, RGBA and compromise - CSS3 . Info]] ([CODE[2007-06-04 19:45:58 +09:00]] 版) <http://www.css3.info/opacity_rgba_and_compromise/>
([[名無しさん]] [WEAK[2007-06-04 10:47:14 +00:00]])
