[7] [DFN[[RUBYB[[[スタイル規則]]]@en[style rule]]]]は、指定した種類の[[要素]]に対して適用されるべき[[スタイル]]を指定する[[規則]]です。
適用対象の[[要素]]は[[選択子]]によって記述し、[[スタイル]]は[[特性]]の名前と値の組として記述します。

* 呼称

[8] [[CSS 2.1]] では[DFN[[RUBYB[[[規則集合]]]@en[rule set]]]]と呼ばれていましたが、 [[CSSOM]] 
では [DFN[[CODE(DOMc)@en[[[STYLE_RULE]]]]]] と呼ばれており、 [[css-syntax]] で[[スタイル規則]]に改められました。

* 仕様書

[REFS[
- [5] [CITE@en[CSS Syntax Module Level 3]] ([TIME[2013-07-26 07:52:42 +09:00]] 版) <http://dev.w3.org/csswg/css-syntax/#style-rules>
]REFS]

* 文脈

[10] [[スタイル規則]]は[[スタイルシート]]最上位の[[規則]]として、あるいは [CODE(CSS)@en[[[@media]]]]
や [CODE(CSS)@en[[[@supports]]]] などの中の[[規則]]として使うことができます。

* 構文

[9] [[スタイル規則]]は構文的には[[被修飾規則]]で、[[prelude]] が[[選択子リスト]]、
[[ブロック]]の中の[[宣言リスト]]に含まれる[[宣言]]が[[特性]]を指定するものとなっています。 [SRC[>>5]]

[11] [[スタイル規則]]内では[[@規則]]を使うことはできず、[[無視]]されます [SRC[>>5]]。

* 歴史

[REFS[
- [1] [CITE@en[Syntax and basic data types]] ([TIME[2011-06-07 13:09:52 +09:00]] 版) <http://www.w3.org/TR/CSS21/syndata.html#rule-sets>
]REFS]

[2] 現時点で[[規則集合]] ([[スタイル規則]]) の処理モデルと意味を明確に規定している [[CSS3]] 世代の仕様書はありません。
一般的な構文は [[css-syntax]] で[[被修飾規則]]として、[[特性]]レベルでの処理モデルは [[css-cascade]]
で規定されていますが、その中間部分が空いています。 [TIME[2013-07-15T06:37:08.600Z]]

[6] >>2 を書いた直後に [[css-syntax]] (>>5) で規定されました。

[REFS[
-[3] [CITE@en-US[csswg: changeset 8741:0ea487450d92]]
( ([TIME[2013-07-27 10:29:56 +09:00]] 版))
<https://dvcs.w3.org/hg/csswg/rev/0ea487450d92>
-[4] [CITE@en-US[csswg: changeset 8744:efa135e27361]]
( ([TIME[2013-07-27 10:30:54 +09:00]] 版))
<https://dvcs.w3.org/hg/csswg/rev/efa135e27361>
]REFS]