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

二つの隣り合うボックスの垂直マージンは融合することがあります。これはマージンの相殺と呼ばれています。

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

構文

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

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

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

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 の定義
勧告 初回定義

初期値0
適用対象table-caption, table, inline-table 以外の表の display 種別を除くすべての要素。。 ::first-letter にも適用されます。
継承なし
パーセンテージ包含ブロックの幅
メディア視覚
計算値指定されたパーセンテージ値または絶対的な長さ
アニメーションの種類length
正規順序形式文法で定義される一意のあいまいでない順序

ブラウザーの対応

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeEdge MobileAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung Internet
基本対応Chrome 完全対応 1Edge 完全対応 12Firefox 完全対応 1IE 完全対応 3Opera 完全対応 3.5Safari 完全対応 1WebView Android 完全対応 1Chrome Android ? Edge Mobile 完全対応 ありFirefox Android 完全対応 4Opera Android 完全対応 6Safari iOS 完全対応 1Samsung Internet Android ?
autoChrome 完全対応 1Edge ? Firefox 完全対応 1IE 完全対応 6
補足
完全対応 6
補足
補足 The auto value is not supported in quirks mode.
Opera 完全対応 3.5Safari 完全対応 1WebView Android ? Chrome Android ? Edge Mobile ? Firefox Android 完全対応 4Opera Android ? Safari iOS ? Samsung Internet Android ?

凡例

完全対応  
完全対応
実装状況不明  
実装状況不明
実装ノートを参照してください。
実装ノートを参照してください。

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

最終更新者: mfuji09,