--- title: 一括指定プロパティ slug: Web/CSS/Shorthand_properties tags: - CSS - Guide - Layout - Reference - Shorthand Properties - properties - shorthand translation_of: Web/CSS/Shorthand_properties ---
一括指定プロパティ (shorthand property) は、他の幾つかの CSS プロパティを一度に設定できる CSS プロパティです。一括指定プロパティを用いると、もっと簡単に (そして普通はもっと読みやすく) スタイルシートが書け、時間や労力を節約することができます。
CSS 仕様書では、同じ主題に作用する共通のプロパティの定義をグループ化するために、一括指定プロパティを定義しています。例えば、 {{cssxref("background")}} プロパティは {{cssxref("background-color")}}、 {{cssxref("background-image")}}、 {{cssxref("background-repeat")}}、{{cssxref("background-position")}} の値を定義することができる一括指定プロパティです。同様に、フォントに関連したプロパティは一括指定の {{cssxref("font")}} を使用して定義することができ、ボックスの周囲のマージンは一括指定の {{cssxref("margin")}} を使用して定義することができます。
一括指定プロパティはとても便利なものですが、使用するにあたって注意しておかなければならない場合が若干あります。
background-color: red; background: url(images/bg.gif) no-repeat left top;とすると背景色を
red
に設定するのではなく、2番目のルールが優先されて {{cssxref("background-color")}} の既定値である transparent
となります。inherit
キーワードをプロパティに適用することはできますが、全体に対して適用できるのみで、1つ1つに対するキーワードではありません。つまり、いくつか特定の値のみを継承させたい場合は、個別指定 (longhand) プロパティで inherit
キーワードを指定するしかありません。値1つの構文: border-width: 1em — 1つの値ですべての辺を表します |
|
値2つの構文: border-width: 1em 2em — 最初の値は垂直、すなわち上下の辺を、2番目の値は水平、すなわち左右の辺を表します。 |
|
値3つの構文: border-width: 1em 2em 3em — 最初の値は上辺、 2番目の値は水平、すなわち左右の辺、3番目の値は下辺を表します。 |
|
値4つの構文: |
値1つの構文: border-radius: 1em — 1つの値がすべての角を表現します |
|
値2つの構文: border-radius: 1em 2em — 最初の値は左上と右下の角、2番目の値は右上と左下の角を表します。 |
|
値3つの構文: border-radius: 1em 2em 3em — 最初の値は左上、2番目の値は右上と左下、3番目の値は右下の角をそれぞれ表します。 |
|
値4つの構文: |
以下のプロパティによる背景の指定は...
background-color: #000; background-image: url(images/bg.gif); background-repeat: no-repeat; background-position: left top;
...1つの宣言で一括指定することができます。
background: #000 url(images/bg.gif) no-repeat left top;
(一括指定の形式は、実際は上記の個別指定に加えて、 background-attachment: scroll
や、 CSS3 ではいくつかの追加プロパティと等価になります。)
CSS3 のプロパティを含む詳しい情報は、 {{cssxref("background")}} をご覧ください。
以下の宣言は ...
font-style: italic; font-weight: bold; font-size: .8em; line-height: 1.2; font-family: Arial, sans-serif;
... 以下のように一括指定することができます。
font: italic bold .8em/1.2 Arial, sans-serif;
この一括指定宣言は、実際には上記の個別指定宣言に加えて、 font-variant: normal
と font-size-adjust: none
(CSS2.0 / CSS3), font-stretch: normal
(CSS3) と等価になります。
境界線の幅、色、スタイルについては1つの宣言にまとめることができます。例えば、以下の CSS ...
border-width: 1px; border-style: solid; border-color: #000;
... は、以下のように簡略化できます。
border: 1px solid #000;
margin
と padding
の一括指定も同様に動作します。 margin
プロパティでは、1 つ、2 つ、3 つ、または 4 つの値を使用して短縮値を指定することができます。以下の CSS 宣言は ...
margin-top: 10px; margin-right: 5px; margin-bottom: 10px; margin-left: 5px;
... は以下の値4つの一括指定を使用した宣言と同じです。なお、値は上から始まって時計回りに、上、右、下、左の順になります (TRBL、 "trouble" の子音)。
margin: 10px 5px 10px 5px;
マージンの値1つ、2つ、3つ、4つの一括指定宣言は次の通りです。
CSS は全体の一括指定プロパティとして {{cssxref("all")}} を提供しており、値を文書中のすべてのプロパティに適用させます。これは、プロパティの継承モデルを以下のいずれかに変更するためのものです。
{{page("/ja/docs/Learn/CSS/Building_blocks/Cascade_and_inheritance", "Controlling_inheritance")}}
CSS の継承がどのように動作するかについての詳細については、カスケードと継承または CSS カスケード入門をご覧ください。