The margin-left
CSS property sets the margin area on the left side of an element. A positive value places it farther from its neighbors, while a negative value places it closer.
The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
The vertical margins of two adjacent boxes may fuse. This is called margin collapsing.
In the rare cases where width is overconstrained (i.e., when all of width
, margin-left
, border
, padding
, the content area, and margin-right
are defined), margin-left
is ignored, and will have the same calculated value as if the auto
value was specified.
Syntax
/* <length> values */ margin-left: 10px; /* An absolute length */ margin-left: 1em; /* relative to the text size */ margin-left: 5%; /* relative to the nearest block container's width */ /* Keyword values */ margin-left: auto; /* Global values */ margin-left: inherit; margin-left: initial; margin-left: unset;
The margin-left
property is specified as the keyword auto
, or a <length>
, or a <percentage>
. Its value can be positive, zero, or negative.
Values
<length>
- The size of the margin as a fixed value.
<percentage>
- The size of the margin as a percentage, relative to the width of the containing block.
auto
- The left margin receives a share of the unused horizontal space, as determined mainly by the layout mode that is used. If the values of
margin-left
andmargin-right
are bothauto
, the calculated space is evenly distributed. This table summarizes the different cases:Value of display
Value of float
Value of position
Computed value of auto
Comment inline
,inline-block
,inline-table
any static
orrelative
0
Inline layout mode block
,inline
,inline-block
,block
,table
,inline-table
,list-item
,table-caption
any static
orrelative
0
, except if bothmargin-left
andmargin-right
are set toauto
. In this case, it is set to the value centering the element inside its parent.Block layout mode block
,inline
,inline-block
,block
,table
,inline-table
,list-item
,table-caption
left
orright
static
orrelative
0
Block layout mode (floating element) any table-*
, excepttable-caption
any any 0
Internal table-*
elements don't have margins, useborder-spacing
insteadany, except flex
,inline-flex
, ortable-*
any fixed
orabsolute
0
, except if bothmargin-left
andmargin-right
are set toauto
. In this case, it is set to the value centering the border area inside the availablewidth
, if fixed.Absolutely positioned layout mode flex
,inline-flex
any any 0
, except if there is any positive horizontal free space. In this case, it is evenly distributed to all horizontalauto
margins.Flexbox layout mode
Formal definition
Initial value | 0
|
Applies to | all elements, except elements with table display types other than table-caption , table and inline-table . It also applies to ::first-letter and ::first-line .
|
Inherited | no |
Percentages | refer to the width of the containing block |
Computed value | the percentage as specified or the absolute length |
Animation type | a length |
Formal syntax
<length> | <percentage> | auto
Examples
Setting left margin using pixels and percentages
.content { margin-left: 5%; }
.sidebox { margin-left: 10px; }
.logo { margin-left: -5px; }
Specifications
Specification | Status | Comment |
---|---|---|
CSS Basic Box ModelThe definition of 'margin-left' in that specification. | Working Draft | No significant change from CSS 2.1. |
CSS Flexible Box Layout ModuleThe definition of 'margin-left' in that specification. | Candidate Recommendation | Defines the behavior of margin-left on flex items.
|
CSS Level 2 (Revision 1)The definition of 'margin-left' in that specification. | Recommendation | Like in CSS1, but removes its effect on inline elements. |
CSS Level 1The definition of 'margin-left' in that specification. | Recommendation | Initial definition. |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
margin-left
|
Chrome
Full support 1 |
Edge
Full support 12 |
Firefox
Full support 1 |
IE
Full support 3 |
Opera
Full support 3.5 |
Safari
Full support 1 |
WebView Android
Full support 1 |
Chrome Android
Full support 18 |
Firefox Android
Full support 4 |
Opera Android
Full support 10.1 |
Safari iOS
Full support 1 |
Samsung Internet Android
Full support 1.0 |
auto
|
Chrome
Full support 1 |
Edge Full support 12 Full support 12 Notes' The |
Firefox
Full support 1 |
IE Full support 6 Full support 6 Notes' The |
Opera
Full support 3.5 |
Safari
Full support 1 |
WebView Android
Full support 37 |
Chrome Android
Full support 18 |
Firefox Android
Full support 4 |
Opera Android
Full support 14 |
Safari iOS
Full support 1 |
Samsung Internet Android
Full support 1.0 |
Legend
- Full support
- Full support
- See implementation notes.'
- See implementation notes.
See also
margin-top
,margin-right
, andmargin-bottom
and themargin
shorthand- The mapped logical properties:
margin-block-start
,margin-block-end
,margin-inline-start
, andmargin-inline-end
and the shorthandsmargin-block
andmargin-inline
margin-left by Mozilla Contributors is licensed under CC-BY-SA 2.5.