Home  >  Article  >  Web Front-end  >  An introduction to five ways to implement Footer placement using CSS

An introduction to five ways to implement Footer placement using CSS

高洛峰
高洛峰Original
2017-03-19 09:24:261737browse

This article mainly introduces the detailed explanation of five CSS methods to implement Footer bottoming. The editor thinks it is quite good, so I will share it with you now and give it as a reference. Let’s follow the editor to take a look.

Sticky footer means that the footer part of the web page is always at the bottom of the browser window.

When the content of the web page is long enough to exceed the visual height of the browser, the footer will be pushed to the bottom of the web page along with the content; but if the content of the web page is not long enough, the bottom footer will remain in the browser bottom of window.

An introduction to five ways to implement Footer placement using CSS

Method 1: Set the margin-bottom of the content part to a negative number


<p class="wrapper">
    <!-- content -->
    <p class="push"></p>
</p>
<p class="footer">footer</p>



html, body {
  margin: 0;
  padding: 0;
  height: 100%;
}
.wrapper {
  min-height: 100%;  
  margin-bottom: -50px; /* 等于footer的高度 */
}
.footer, .push {
  height: 50px;
}


1. This method requires additional placeholder elements in the container (p. push).

2. The margin-bottom of p.wrapper needs to be the same as the -height value of p.footer. Note that it is a negative height.

Method 2: Set the margin-top of the footer to a negative number

Add a parent element outside the content and let the padding of the content part -Bottom is equal to the height of the footer.


<p class="content">
  <p class="content-inside">
    <!-- content -->
  </p>
</p>
<p class="footer">footer</p>



html, body {
  margin: 0;
  padding: 0;
  height: 100%;
}
.content {
  min-height: 100%;
}
.content-inside {
  padding: 20px;
  padding-bottom: 50px;
}
.footer {
  height: 50px;
  margin-top: -50px;
}


Method 3: Use calc() to set the content height


<p class="content">
  <!-- content -->
</p>
<p class="footer">footer</p>



.content {
  min-height: calc(100vh - 70px);
}
.footer {
  height: 50px;
}


Assume here that there is a 20px gap between p.content and p.footer, so 70px=50px+20px

Method 4: Use flexbox elasticity Box layout

The footer height of the above three methods is fixed. If there is too much content in the footer, the layout may be destroyed.


<p class="content">
  <!-- content -->
</p>
<p class="footer">footer</p>



html {
  height: 100%;
}
body {
  min-height: 100%;
  display: flex;
  flex-direction: column;
}
.content {
  flex: 1;
}


Method five: Use Grid grid layout


##

<p class="content">
  <!-- content -->
</p>
<p class="footer">footer</p>



html {
  height: 100%;
}
body {
  min-height: 100%;
  display: grid;
  grid-template-rows: 1fr auto;
}
.footer {
  grid-row-start: 2;
  grid-row-end: 3;
}


The above is the detailed content of An introduction to five ways to implement Footer placement using CSS. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn