CSSmargin-left プロパティは、要素の左側のマージン領域を設定します。正の数を指定すると、隣との間が遠くなるように配置され、負の数を指定すると、近くなるように配置されます。

/* <length> 値 */
margin-left: 10px;  /* 絶対的な寸法 */
margin-left: 1em;   /* 文字の大きさからの相対 */
margin-left: 5%;    /* 直近のブロックコンテナーの幅からの相対 */

/* キーワード値 */
margin-left: auto;

/* グローバル値 */
margin-left: inherit;
margin-left: initial;
margin-left: unset;

CSS の margin-left が適用される領域

2つの隣接するボックスの垂直マージンは問題になるかもしれません。これはマージンの相殺と呼ばれています。

まれに幅の制約がきつすぎると(つまり、 widthmargin-leftborderpadding、 コンテンツエリア、 margin-right がすべて定義されていた場合)、 margin-left は無視され、 auto が設定されていたときと同じ計算値になります。

初期値0
適用対象テーブル系要素を除く全ての要素。ただし、table-captiontableinline-table には適用できます。。 ::first-letter にも適用されます。
継承不可
パーセンテージ包含ブロックの幅
メディアvisual
計算値指定されたパーセンテージ値または絶対的な長さ
アニメーションの種類length
正規順序形式文法で定義される一意のあいまいでない順序

構文

margin-left プロパティは auto キーワード、または <length><percentage> で指定されます。正の数、ゼロ、負の数が指定できます。

<length>
固定値によるマージンの寸法です。
<percentage>
内包ブロックの width に対するパーセントによるマージンの寸法です。
auto
左マージンは未使用の水平方向の余白を共有します。これは主に使用されているレイアウトモードによって決定されます。 margin-leftmargin-right の両方が auto の場合は、両方に均等に割り当てられます。それ以外の場合は以下の表のとおりです。
display の値 float の値 position の値 auto の計算値 コメント
inline, inline-block, inline-table 任意 static または relative 0 インラインレイアウトモード
block, inline, inline-block, block, table, inline-table, list-item, table-caption 任意 static または relative 0。ただし margin-leftmargin-right が共に auto に設定されていた場合は、親要素の中で中央揃えする値に設定されます。 ブロックレイアウトモード
block, inline, inline-block, block, table, inline-table, list-item, table-caption left または right static または relative 0 ブロックレイアウトモード(フロート要素)
table-* すべて、ただし table-caption を除く 任意 任意 0 内部の table-* 要素にはマージンがありません。代わりに border-spacing を使用してください
flexinline-flex, table-* 以外のすべて 任意 fixed または absolute 0。ただし margin-leftmargin-right が共に auto に設定されていた場合は、ボーダー領域を width の中で中央揃えする値に設定されます(固定されている場合)。 絶対位置指定配置モード
flex, inline-flex 任意 任意 0。但し、水平に正の余白がある場合は、 auto を指定したすべてのマージンに均等に割り振られます。 フレックスボックス配置モード

構文形式

<length> | <percentage> | auto

.content { margin-left: 5%; }
.sidebox { margin-left: 10px; }
.logo    { margin-left: -5px; }

仕様書

仕様書 策定状況 コメント
CSS Basic Box Model
margin-left の定義
草案 CSS 2.1 から目立った変更なし。
CSS Transitions
margin-left の定義
草案 margin-left がアニメーション可能と定義。
CSS Flexible Box Layout Module
margin-left の定義
勧告候補 フレックス項目での margin-left の挙動を定義。
CSS Level 2 (Revision 1)
margin-left の定義
勧告 CSS1 と同様、ただしインライン要素での効果は削除。
CSS Level 1
margin-left の定義
勧告 初回定義。

ブラウザー実装状況

機能ChromeEdgeFirefoxInternet ExplorerOperaSafari
基本対応112133.51
auto1 ?1613.51
機能Android webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
基本対応1 ? あり461 ?
auto ? ? ?4 ? ? ?

1. The auto value is not supported in quirks mode.

ドキュメントのタグと貢献者

最終更新者: mfuji09,