The bottom CSS property participates in specifying the vertical position of a positioned element. It has no effect on non-positioned elements.
/* <length> values */ bottom: 3px; bottom: 2.4em; /* <percentages> of the height of the containing block */ bottom: 10%; /* Keyword value */ bottom: auto; /* Global values */ bottom: inherit; bottom: initial; bottom: unset;
The effect of bottom depends on how the element is positioned (i.e., the value of the position property):
- When
positionis set toabsoluteorfixed, thebottomproperty specifies the distance between the element's bottom edge and the bottom edge of its containing block. - When
positionis set torelative, thebottomproperty specifies the distance the element's bottom edge is moved above its normal position. - When
positionis set tosticky, thebottomproperty behaves like its position isrelativewhen the element is inside the viewport, and like its position isfixedwhen it is outside. - When
positionis set tostatic, thebottomproperty has no effect.
When both top and bottom are specified, and height is unspecified or either auto or 100%, both the top and bottom distances are respected. In all other situations, if height is constrained in any way, the top property takes precedence and the bottom property is ignored.
| Initial value | auto |
|---|---|
| Applies to | positioned elements |
| Inherited | no |
| Percentages | refer to the height of the containing block |
| Media | visual |
| Computed value | if specified as a length, the corresponding absolute length; if specified as a percentage, the specified value; otherwise, auto |
| Animation type | a length, percentage or calc(); |
| Canonical order | the unique non-ambiguous order defined by the formal grammar |
Syntax
Values
<length>- A negative, null, or positive
<length>that represents:- for absolutely positioned elements, the distance to the bottom edge of the containing block.
- for relatively positioned elements, the distance that the element is moved above its normal position.
<percentage>- A
<percentage>of the containing block's height, used as described in the summary. auto- Specifies that:
- for absolutely positioned elements, the position of the element is based on the
topproperty, whileheight: autois treated as a height based on the content. - for relatively positioned elements, the distance of the element from its normal position is based on the
topproperty, or iftopis alsoauto, the element is not moved vertically at all.
- for absolutely positioned elements, the position of the element is based on the
inherit- Specifies that the value is the same as the computed value from its parent element (which might not be its containing block). This computed value is then handled as if it were a
<length>,<percentage>, or theautokeyword.
Formal syntax
<length> | <percentage> | auto
Example
This example demonstrates the difference in behavior of the bottom property, when position is absolute versus fixed.
HTML
<p>This<br>is<br>some<br>tall,<br>tall,<br>tall,<br>tall,<br>tall<br>content.</p> <div class="fixed"><p>Fixed</p></div> <div class="absolute"><p>Absolute</p></div>
CSS
p {
font-size: 30px;
line-height: 2em;
}
div {
width: 48%;
text-align: center;
background: rgba(55,55,55,.2);
border: 1px solid blue;
}
.absolute {
position: absolute;
bottom: 0;
left: 0;
}
.fixed {
position: fixed;
bottom: 0;
right: 0;
}
Result
Specifications
| Specification | Status | Comment |
|---|---|---|
| CSS Transitions The definition of 'bottom' in that specification. |
Working Draft | Defines bottom as animatable. |
| CSS Level 2 (Revision 1) The definition of 'bottom' in that specification. |
Recommendation | Initial definition. |
Browser compatibility
| Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
|---|---|---|---|---|---|---|
| Basic support | 1.0 | (Yes) | 1.0 (1.7 or earlier) | 5[1] | 6 | 1.0 (85) |
| Feature | Android | Edge | Firefox Mobile (Gecko) | IE Phone | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|
| Basic support | ? | (Yes) | 1.0 (1.9.2) | ? | ? | ? |
[1] In Internet Explorer versions before 7.0, when both top and bottom are specified, the element position is over-constrained and the top property has precedence. In that case the computed value of bottom is set to -top, while its specified value is ignored.