Spec-Zone.ru › CSS

`margin` CSS property

Baseline Widely available

This feature is well established and works across many devices and browser versions. It's been available across browsers since July 2015.

The margin CSS shorthand property sets the margin area on all four sides of an element.

Try it

margin: 1em;
margin: 5% 0;
margin: 10px 50px 20px;
margin: 10px 50px 20px 0;
margin: 0;
<section id="default-example">
  <div id="container">
    <div class="row"></div>
    <div class="row transition-all" id="example-element"></div>
    <div class="row"></div>
  </div>
</section>
#container {
  width: 300px;
  height: 200px;
  display: flex;
  align-content: flex-start;
  flex-direction: column;
  justify-content: flex-start;
}

.row {
  height: 33.33%;
  display: inline-block;
  border: solid #ce7777 10px;
  background-color: #2b3a55;
  flex-shrink: 0;
}

#example-element {
  border: solid 10px #ffbf00;
  background-color: #2b3a55;
}

Constituent properties

This property is a shorthand for the following CSS properties:

  • margin-top
  • margin-right
  • margin-bottom
  • margin-left

Syntax

/* apply to all four sides */
margin: 1em;
margin: -3px;

/* top and bottom | left and right */
margin: 5% auto;

/* top | left and right | bottom */
margin: 1em auto 2em;

/* top | right | bottom | left */
margin: 2px 1em 0 auto;

/* anchor-size() values */
margin: 5% anchor-size(width);
margin: calc(anchor-size(width) / 4) 1em 0
  anchor-size(--my-anchor self-inline, 50px);

/* Keyword values */
margin: auto;

/* Global values */
margin: inherit;
margin: initial;
margin: revert;
margin: revert-layer;
margin: unset;

The margin property may be specified using one, two, three, or four values. Each value is a <length>, a <percentage>, or the keyword auto. Negative values draw the element closer to its neighbors than it would be by default.

  • When one value is specified, it applies the same margin to all four sides.
  • When two values are specified, the first margin applies to the top and bottom, the second to the left and right.
  • When three values are specified, the first margin applies to the top, the second to the right and left, the third to the bottom.
  • When four values are specified, the margins apply to the top, right, bottom, and left in that order (clockwise).

Values

<length>
The size of the margin as a fixed value.
  • For anchor-positioned elements, the anchor-size() function resolves to a <length> value relative to the associated anchor element's width or height (see Setting element margin based on anchor size).
<percentage>
The size of the margin as a percentage, relative to the inline size (width in a horizontal language, defined by writing-mode) of the containing block.
auto
The browser selects a suitable margin to use. For example, in certain cases this value can be used to center an element.

Description

This property can be used to set a margin on all four sides of an element. Margins create extra space around an element, unlike padding, which creates extra space within an element.

The top and bottom margins have no effect on non-replaced inline elements, such as <span> or <code>.

Horizontal centering

You can horizontally center an element within its parent by setting margin: 0 auto;.

A more common method to center an element horizontally is by setting display: flex; and justify-content: center; on a container, which centers its flex item children.

Margin collapsing

Elements' top and bottom margins are sometimes collapsed into a single margin that is equal to the larger of the two margins. See Mastering margin collapsing for more information.

Formal definition

Initial value as each of the properties of the shorthand:
  • margin-bottom
  • margin-left
  • margin-right
  • margin-top
Applies to all elements, except elements with table display types other than <code>table-caption</code>, <code>table</code> and <code>inline-table</code>
Inherited no
Percentages refer to the width of the containing block
Computed value as each of the properties of the shorthand:
  • margin-bottom
  • margin-left
  • margin-right
  • margin-top
Animation type a <a href="/en-US/docs/Web/CSS/Reference/Values/length#interpolation" title="Values of the <length> CSS data type are interpolated as real, floating-point numbers.">length</a>

Formal syntax

margin = 
  <'margin-top'>{1,4}

Examples

Basic example

HTML

<div class="center">This element is centered.</div>

<div class="outside">This element is positioned outside of its container.</div>

CSS

.center {
  margin: auto;
  background: lime;
  width: 66%;
}

.outside {
  margin: 3rem 0 0 -3rem;
  background: cyan;
  width: 66%;
}

More examples

margin: 5%; /* All sides: 5% margin */

margin: 10px; /* All sides: 10px margin */

margin: 1.6em 20px; /* top and bottom: 1.6em margin */
/* left and right: 20px margin */

margin: 10px 3% -1em; /* top:            10px margin */
/* left and right: 3% margin   */
/* bottom:         -1em margin */

margin: 10px 3px 30px 5px; /* top:    10px margin */
/* right:  3px margin  */
/* bottom: 30px margin */
/* left:   5px margin  */

margin: 2em auto; /* top and bottom: 2em margin   */
/* Box is horizontally centered */

margin: auto; /* top and bottom: 0 margin     */
/* Box is horizontally centered */

Specifications

Specification
CSS Box Model Module Level 3
# margin

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari on iOS Samsung Internet WebView Android WebView on iOS
margin
1
12
1
3.5
1
18
4
10.1
1
1.0
4.4
1
anchor-size
132
132
147
117
26
132
147
87
26
29.0
132
26
auto
1
12The auto value is not supported in quirks mode.
1
3.5
1
18
4
14
1
1.0
37
1

See also

  • margin-top, margin-right, margin-bottom, and margin-left
  • margin-block-start, margin-block-end, margin-inline-start, and margin-inline-end
  • margin-block and margin-inline shorthands
  • Mastering margin collapsing
  • Introduction to the CSS box model guide
  • CSS box model module

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/margin

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API