diff options
Diffstat (limited to 'files/ja/web/css/margin/index.html')
-rw-r--r-- | files/ja/web/css/margin/index.html | 181 |
1 files changed, 181 insertions, 0 deletions
diff --git a/files/ja/web/css/margin/index.html b/files/ja/web/css/margin/index.html new file mode 100644 index 0000000000..876e9526ea --- /dev/null +++ b/files/ja/web/css/margin/index.html @@ -0,0 +1,181 @@ +--- +title: margin +slug: Web/CSS/margin +tags: + - CSS + - CSS プロパティ + - CSS 基本ボックスモデル + - Reference +translation_of: Web/CSS/margin +--- +<div>{{CSSRef}}</div> + +<p><strong><code>margin</code></strong> は <a href="/ja/docs/Web/CSS">CSS</a> のプロパティで、要素の全四辺の<a href="/ja/docs/Web/CSS/CSS_Box_Model/Introduction_to_the_CSS_box_model">マージン領域</a>を設定します。これはすべての個別のマージン ({{cssxref("margin-top")}}, {{cssxref("margin-right")}}, {{cssxref("margin-bottom")}}, {{cssxref("margin-left")}}) の<a href="/ja/docs/Web/CSS/Shorthand_properties">一括指定</a>です。</p> + +<div>{{EmbedInteractiveExample("pages/css/margin.html")}}</div> + +<p class="hidden">このデモのソースファイルは GitHub リポジトリに格納されています。デモプロジェクトに協力したい場合は、 <a href="https://github.com/mdn/interactive-examples">https://github.com/mdn/interactive-examples</a> をクローンしてプルリクエストを送信してください。</p> + +<p>top および bottom のマージンは、 {{HTMLElement("span")}} または {{HTMLElement("code")}} などの<em><a href="/ja/docs/Web/CSS/Replaced_element">置換要素</a>ではない</em>インライン要素には効果がありません。</p> + +<div class="note"> +<p><strong>注:</strong> マージンは要素の周りに追加の領域を作成します。それに対して、 {{cssxref("padding")}} は要素<em>内</em>に追加の領域を作成します。</p> +</div> + +<h2 id="Syntax" name="Syntax">構文</h2> + +<pre class="brush:css no-line-numbers notranslate">/* 四辺すべてに適用 */ +margin: 1em; +margin: -3px; + +/* 上下 | 左右 */ +margin: 5% auto; + +/* 上 | 左右 | 下 */ +margin: 1em auto 2em; + +/* 上 | 右 | 下 | 左 */ +margin: 2px 1em 0 auto; + +/* グローバル値 */ +margin: inherit; +margin: initial; +margin: unset; +</pre> + +<p><code>margin</code> プロパティは1~4つの値を使って指定することができます。それぞれの値は <code><a href="#<length>"><length></a></code>、 <code><a href="#<percentage>"><percentage></a></code>、 または <code><a href="#auto">auto</a></code> キーワードです。負の数を指定すると、要素を既定よりも隣と近づけて描画します。</p> + +<ul> + <li>値が<strong>1つ</strong>指定された場合、<strong>全四辺</strong>に同じマージンが適用される。</li> + <li>値が<strong>2つ</strong>指定された場合、1つ目のマージンは<strong>上下</strong>、2つ目は<strong>左右</strong>の辺に適用される。</li> + <li>値が<strong>3つ</strong>指定された場合、1つ目のマージンは<strong>上</strong>、2つ目は<strong>左右</strong>、3つ目は<strong>下</strong>の辺に適用される。</li> + <li>値が<strong>4つ</strong>指定された場合、マージンはそれぞれ<strong>上</strong>、<strong>右</strong>、<strong>下</strong>、<strong>左</strong>の順 (時計回り) に適用される。</li> +</ul> + +<h3 id="Values" name="Values">値</h3> + +<dl> + <dt><strong>{{cssxref("length")}}</strong></dt> + <dd>固定値によるマージンの寸法です。</dd> + <dt>{{cssxref("percentage")}}</dt> + <dd>内包ブロックの <em>width</em> に対するパーセントによるマージンの寸法です。</dd> + <dt><code>auto</code></dt> + <dd>ブラウザーが適切なマージンを選択して使用します。例えば、特定の場合に要素を中央揃えするためにこの値を使用します。</dd> +</dl> + +<h3 id="Formal_syntax" name="Formal_syntax">形式文法</h3> + +<pre class="syntaxbox notranslate">{{csssyntax}}</pre> + +<h2 id="Examples" name="Examples">例</h2> + +<h3 id="Simple_example" name="Simple_example">単純な例</h3> + +<h4 id="HTML">HTML</h4> + +<pre class="brush: html notranslate"><div class="center">This element is centered.</div> + +<div class="outside">This element is positioned outside of its container.</div></pre> + +<h4 id="CSS">CSS</h4> + +<pre class="brush: css; highlight:[2,8] notranslate">.center { + margin: auto; + background: lime; + width: 66%; +} + +.outside { + margin: 3rem 0 0 -3rem; + background: cyan; + width: 66%; +}</pre> + +<p>{{ EmbedLiveSample('Simple_example','100%',120) }}</p> + +<h3 id="More_examples" name="More_examples">その他の例</h3> + +<pre class="brush: css notranslate">margin: 5%; /* 全辺: 5% のマージン */ + +margin: 10px; /* 全辺: 10px のマージン */ + +margin: 1.6em 20px; /* 上と下: 1.6em のマージン */ + /* 左と右: 20px のマージン */ + +margin: 10px 3% -1em; /* 上: 10px のマージン */ + /* 左と右: 3% のマージン */ + /* 下: -1em のマージン */ + +margin: 10px 3px 30px 5px; /* 上: 10px のマージン */ + /* 右: 3px のマージン */ + /* 下: 30px のマージン */ + /* 右: 5px のマージン */ + +margin: 2em auto; /* 上と下: 2em のマージン */ + /* ボックスは水平方向に中央 */ + +margin: auto; /* 上と下: 0 のマージン */ + /* ボックスは水平方向に中央 */ +</pre> + +<h2 id="Notes" name="Notes">注</h2> + +<h3 id="Horizontal_centering" name="Horizontal_centering">水平方向の中央揃え</h3> + +<p>最近のブラウザーで何かを中央揃えしたい場合は、 <code><a href="/ja/docs/Web/CSS/display">display</a>: flex; <a href="/ja/docs/Web/CSS/justify-content">justify-content</a>: center;</code> を使用することができます。</p> + +<p>しかし、 IE8-9 のような古いブラウザーはフレックスボックスレイアウトに対応していないため、これは利用できません。親要素内で要素を中央揃えするのであれば、 <code>margin: 0 auto;</code> を使用してください。</p> + +<h3 id="Margin_collapsing" name="Margin_collapsing">マージンの相殺</h3> + +<p>要素の上下のマージンは、相殺されて2つのマージンのうち大きい方を取る単一のマージンになることがあります。詳しくは<a href="/ja/docs/Web/CSS/CSS_Box_Model/Mastering_margin_collapsing">マージンの相殺の理解</a>を参照してください。</p> + +<h2 id="Specifications" name="Specifications">仕様書</h2> + +<table class="standard-table"> + <thead> + <tr> + <th scope="col">仕様書</th> + <th scope="col">状態</th> + <th scope="col">備考</th> + </tr> + </thead> + <tbody> + <tr> + <td>{{ SpecName('CSS3 Box', '#margin', 'margin') }}</td> + <td>{{ Spec2('CSS3 Box') }}</td> + <td>有意な変更なし。</td> + </tr> + <tr> + <td>{{ SpecName('CSS3 Transitions', '#animatable-css', 'margin') }}</td> + <td>{{ Spec2('CSS3 Transitions') }}</td> + <td><code>margin</code> をアニメーション可能として定義。</td> + </tr> + <tr> + <td>{{ SpecName('CSS2.1', 'box.html#margin-properties', 'margin') }}</td> + <td>{{ Spec2('CSS2.1') }}</td> + <td>インライン要素における top および bottom マージンの効果を削除。</td> + </tr> + <tr> + <td>{{ SpecName('CSS1', '#margin', 'margin') }}</td> + <td>{{ Spec2('CSS1') }}</td> + <td>初回定義</td> + </tr> + </tbody> +</table> + +<p>{{cssinfo}}</p> + +<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザーの互換性</h2> + +<div class="hidden">このページの互換性一覧表は構造化データから生成されています。データに協力していただけるのであれば、 <a class="external" href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> をチェックアウトしてプルリクエストを送信してください。</div> + +<p>{{Compat("css.properties.margin")}}</p> + +<h2 id="See_also" name="See_also">関連情報</h2> + +<ul> + <li><a class="internal" href="/ja/docs/Web/CSS/CSS_Box_Model/Introduction_to_the_CSS_box_model">CSS 基本ボックスモデルの紹介 </a></li> + <li><a class="internal" href="/ja/docs/Web/CSS/CSS_Box_Model/Mastering_margin_collapsing">マージンの相殺</a></li> + <li>{{cssxref("margin-top")}}, {{cssxref("margin-right")}}, {{cssxref("margin-bottom")}}, {{cssxref("margin-left")}}</li> +</ul> |