The margin-top CSS property sets the margin area on the top of an element. A positive value places it farther from its neighbors, while a negative value places it closer.
This property has no effect on non-replaced inline elements, such as <span> or <code>.
Syntax
/* <length> values */ margin-top: 10px; /* An absolute length */ margin-top: 1em; /* relative to the text size */ margin-top: 5%; /* relative to the nearest block container's width */ /* Keyword values */ margin-top: auto; /* Global values */ margin-top: inherit; margin-top: initial; margin-top: revert; margin-top: revert-layer; margin-top: unset;
The margin-top 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 inline size (width in a horizontal language, defined by
writing-mode) of the containing block. auto-
The browser selects a suitable value to use. See
margin.
Formal definition
| Initial value | 0 |
|---|---|
| Applies to | all elements except internal table elements, ruby base containers, and ruby annotation containers |
| Inherited | no |
| Computed value | the keyword auto or a computed <length-percentage> value |
| Animation type | by computed value type |
Formal syntax
<length-percentage> | auto
Examples
Setting positive and negative top margins
.content {
margin-top: 5%;
}
.sidebox {
margin-top: 10px;
}
.logo {
margin-top: -5px;
}
#footer {
margin-top: 1em;
}
See also
margin-right,margin-bottom, andmargin-leftand themarginshorthand- The mapped logical properties:
margin-block-start,margin-block-end,margin-inline-start, andmargin-inline-endand the shorthandsmargin-blockandmargin-inline