Please note, this is a STATIC archive of website developer.mozilla.org from 03 Nov 2016, cach3.com does not collect or store any user information, there is no "phishing" involved.

Revision 1046646 of bottom

  • Revision slug: Web/CSS/bottom
  • Revision title: bottom
  • Revision id: 1046646
  • Created:
  • Creator: Simplexible
  • Is current revision? No
  • Comment {{xref_csspercentage}} replaced with {{cssxref("<percentage>")}}

Revision Content

{{CSSRef}}

Summary

The bottom CSS property participates in specifying the position of positioned elements.

For absolutely positioned elements, that is, those whose {{cssxref("position")}} property is set to absolute or fixed, the bottom property specifies the distance between the bottom margin edge of the element and the bottom edge of the block containing the element.

For relatively positioned elements, that is, those with whose {{cssxref("position")}} property is set to relative, the bottom property specifies the distance the element's bottom edge is moved above its normal position.

When both {{cssxref("top")}} and bottom are specified, and {{cssxref("height")}} is unspecified or either auto or 100%, both the {{cssxref("top")}} and bottom distances are respected. In all other situations, if {{cssxref("height")}} is constrained in any way, the {{cssxref("top")}} property takes precedence and the bottom property is ignored.

{{cssinfo}}

Syntax

/* <length> values */
bottom: 3px;
bottom: 2.4em;

/* <percentages> of the height of the containing block */
bottom: 10%;

/* keyword values */
bottom: auto;
bottom: inherit;

Values

<length>
A negative, null, or positive {{cssxref("")}} that represents:
  • for absolutely positioned elements, the distance to the bottom edge of the containing block;
  • for relatively positioned elements, the offset that the element is moved above its position in the normal flow if it wasn't positioned.
<percentage>
A {{cssxref("<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 {{Cssxref("top")}} property, and height: auto is treated as a height based on the content.
  • for relatively positioned elements, the offset the element from its original position is based on the {{Cssxref("top")}} property, or if top is also auto, the element is not moved vertically at all.
inherit
Indicates that the value is the same as the computed value from its parent element (which may not be its containing block). This computed value is then handled as if it were a {{cssxref("")}}, {{cssxref("<percentage>")}}, or the auto keyword.

Formal syntax

{{csssyntax}}

Examples

element { 
    position: absolute;
    bottom: 20px; 
    height: 200px;
    border: 1px solid #000;
}

The following sample demonstrates the difference in behavior of the bottom property when {{cssxref("position")}} is absolute versus fixed. When the regular text becomes taller than the viewable portion of the page (that is, the browser window's viewport), blocks positioned with position:absolute scroll with the page, while blocks positioned with position:fixed don't.

<!DOCTYPE html>
<html>
<head>
<title>Position at bottom, absolute or fixed</title>
<style type="text/css">
p {font-size:30px; line-height:3em;}
div.pos {width:49%; text-align:center; border:2px solid #00f;}
div#abs {position:absolute; bottom:0; left:0;}
div#fix {position:fixed; bottom:0; right:0;}
</style>
</head>
<body>
  <p>This<br>is<br>some<br>tall,<br>tall,
    <br>tall,<br>tall,<br>tall<br>content.</p>
  <div id="fix" class="pos"><p>Fixed</p></div>
  <div id="abs" class="pos"><p>Absolute</p></div>
</body>
</html>

Specifications

Specification Status Comment
{{SpecName('CSS2.1', 'visuren.html#choose-position', 'bottom')}} {{Spec2('CSS2.1')}} Initial definition

Browser compatibility

{{CompatibilityTable}}
Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support 1.0 {{CompatGeckoDesktop("1.0")}} 5[1] 6 1.0 (85)
Feature Android Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile
Basic support {{CompatUnknown}} {{CompatGeckoMobile("1.9.2")}} {{CompatUnknown}} {{CompatUnknown}} {{CompatUnknown}}

[1] In Internet Explorer versions before 7.0, when both {{cssxref("top")}} and bottom are specified, the element position is over-constrained and the {{cssxref("top")}} property has precedence. In that case the computed value of bottom is set to -top, while its specified value is ignored.

Revision Source

<div>{{CSSRef}}</div>

<h2 id="Summary" name="Summary">Summary</h2>

<p>The <strong><code>bottom</code></strong> <a href="/en-US/docs/CSS" title="CSS">CSS</a> property participates in specifying the position of <strong>positioned elements</strong>.</p>

<p>For <strong>absolutely positioned elements</strong>, that is, those whose {{cssxref("position")}} property is set to <code>absolute</code> or <code>fixed</code>, the <code>bottom</code> property specifies the distance between the bottom margin edge of the element and the bottom edge of the block containing the element.</p>

<p>For <strong>relatively positioned elements</strong>, that is, those with whose {{cssxref("position")}} property is set to <code>relative</code>, the <code>bottom</code> property specifies the distance the element's bottom edge is moved above its normal position.</p>

<p>When both {{cssxref("top")}} and <code>bottom</code> are specified, <strong>and</strong> {{cssxref("height")}} is unspecified or either <code>auto</code> or <code>100%</code>, both the {{cssxref("top")}} and <code>bottom</code> distances are respected. In all other situations, if {{cssxref("height")}} is constrained in any way, the {{cssxref("top")}} property takes precedence and the <code>bottom</code> property is ignored.</p>

<p>{{cssinfo}}</p>

<h2 id="Syntax" name="Syntax">Syntax</h2>

<pre class="brush:css">
/* &lt;length&gt; values */
bottom: 3px;
bottom: 2.4em;

/* &lt;percentages&gt; of the height of the containing block */
bottom: 10%;

/* keyword values */
bottom: auto;
bottom: inherit;
</pre>

<h3 id="Values">Values</h3>

<dl>
 <dt><code>&lt;length&gt;</code></dt>
 <dd>A negative, <code>null</code>, or positive {{cssxref("")}} that represents:
 <ul>
  <li>for <strong>absolutely positioned elements</strong>, the distance to the bottom edge of the containing block;</li>
  <li>for <strong>relatively positioned elements</strong>, the offset that the element is moved above its position in the normal flow if it wasn't positioned.</li>
 </ul>
 </dd>
 <dt><code>&lt;percentage&gt;</code></dt>
 <dd>A {{cssxref("&lt;percentage&gt;")}} of the containing block's height, used as described in the <a href="#Summary">summary</a>.</dd>
 <dt><code>auto</code></dt>
 <dd>Specifies that:
 <ul>
  <li>for <strong>absolutely positioned elements</strong>, the position of the element is based on the {{Cssxref("top")}} property, and <code>height: auto</code> is treated as a height based on the content.</li>
  <li>for <strong>relatively positioned elements</strong>, the offset the element from its original position is based on the {{Cssxref("top")}} property, or if <code>top</code> is also <code>auto</code>, the element is not moved vertically at all.</li>
 </ul>
 </dd>
 <dt><code>inherit</code></dt>
 <dd>Indicates that the value is the same as the computed value from its parent element (which may not be its containing block). This computed value is then handled as if it were a {{cssxref("")}}, {{cssxref("&lt;percentage&gt;")}}, or the <code>auto</code> keyword.</dd>
</dl>

<h3 id="Formal_syntax">Formal syntax</h3>

<pre class="syntaxbox">
{{csssyntax}}</pre>

<h2 id="Examples" name="Examples">Examples</h2>

<pre class="brush: css; highlight:[2]">
element { 
    position: absolute;
    bottom: 20px; 
    height: 200px;
    border: 1px solid #000;
}
</pre>

<p>The following sample demonstrates the difference in behavior of the <code>bottom</code> property when {{cssxref("position")}} is <code>absolute</code> versus <code>fixed</code>. When the regular text becomes taller than the viewable portion of the page (that is, the browser window's viewport), blocks positioned with <code>position:absolute</code> scroll with the page, while blocks positioned with <code>position:fixed</code> don't.</p>

<pre class="brush: html">
&lt;!DOCTYPE html&gt;
&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Position at bottom, absolute or fixed&lt;/title&gt;
&lt;style type="text/css"&gt;
p {font-size:30px; line-height:3em;}
div.pos {width:49%; text-align:center; border:2px solid #00f;}
div#abs {position:absolute; bottom:0; left:0;}
div#fix {position:fixed; bottom:0; right:0;}
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
  &lt;p&gt;This&lt;br&gt;is&lt;br&gt;some&lt;br&gt;tall,&lt;br&gt;tall,
    &lt;br&gt;tall,&lt;br&gt;tall,&lt;br&gt;tall&lt;br&gt;content.&lt;/p&gt;
  &lt;div id="fix" class="pos"&gt;&lt;p&gt;Fixed&lt;/p&gt;&lt;/div&gt;
  &lt;div id="abs" class="pos"&gt;&lt;p&gt;Absolute&lt;/p&gt;&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre>

<h2 id="Specifications" name="Specifications">Specifications</h2>

<table class="standard-table">
 <thead>
  <tr>
   <th scope="col">Specification</th>
   <th scope="col">Status</th>
   <th scope="col">Comment</th>
  </tr>
 </thead>
 <tbody>
  <tr>
   <td>{{SpecName('CSS2.1', 'visuren.html#choose-position', 'bottom')}}</td>
   <td>{{Spec2('CSS2.1')}}</td>
   <td>Initial definition</td>
  </tr>
 </tbody>
</table>

<h2 id="Browser_compatibility" name="Browser_compatibility">Browser compatibility</h2>

<div>{{CompatibilityTable}}</div>

<div id="compat-desktop">
<table class="compat-table">
 <tbody>
  <tr>
   <th>Feature</th>
   <th>Chrome</th>
   <th>Firefox (Gecko)</th>
   <th>Internet Explorer</th>
   <th>Opera</th>
   <th>Safari (WebKit)</th>
  </tr>
  <tr>
   <td>Basic support</td>
   <td>1.0</td>
   <td>{{CompatGeckoDesktop("1.0")}}</td>
   <td>5<sup>[1]</sup></td>
   <td>6</td>
   <td>1.0 (85)</td>
  </tr>
 </tbody>
</table>
</div>

<div id="compat-mobile">
<table class="compat-table">
 <tbody>
  <tr>
   <th>Feature</th>
   <th>Android</th>
   <th>Firefox Mobile (Gecko)</th>
   <th>IE Phone</th>
   <th>Opera Mobile</th>
   <th>Safari Mobile</th>
  </tr>
  <tr>
   <td>Basic support</td>
   <td>{{CompatUnknown}}</td>
   <td>{{CompatGeckoMobile("1.9.2")}}</td>
   <td>{{CompatUnknown}}</td>
   <td>{{CompatUnknown}}</td>
   <td>{{CompatUnknown}}</td>
  </tr>
 </tbody>
</table>
</div>

<p>[1] In Internet Explorer versions before 7.0, when both {{cssxref("top")}} and <code>bottom</code> are specified, the element position is over-constrained and the {{cssxref("top")}} property has precedence. In that case the computed value of <code>bottom</code> is set to <code>-top</code>, while its specified value is ignored.</p>
Revert to this revision