Sticky footer实现

常有这样的需求,比如将footer“固定”在底部,如果内容区没有占满整个屏幕,footer固定在底部,若内容区超过屏幕,则footer处于内容区的尾部。总之就是内容铺不满,footer固定在窗口底部,若内容能铺满,则处于内容区下面。

HTML结构:

<body>
  <div class="container">
    <div class="main">     balabalbalabla
    </div>
   </div>
   <div class="footer">Footer</div>
</body>

CSS部分,有两种方法,

1. footer固定高度,container设置最小高度。

* {
    margin:0;
    padding:0;
}
html, body {
    height: 100%;
}
.container {
    min-height: calc(100vh - 80px);
}
.footer {
    height: 80px;
    background-color: grey;
}

2. footer固定高度,main设置padding-bottom等于footer的高度,然后footer设置margin-top为footer的高度。

* {
    margin:0;
    padding:0;
}
html, body {
    height: 100%;
}
.container {
    min-height: 100%;
}
.main {
    padding-bottom: 80px;
}
.footer {
    background-color: grey;
    margin-top: -80px;
    height: 80px;
}         

个人喜欢第二种方法,calc方法比较耗性能。

时间: 2024-11-05 06:14:55

Sticky footer实现的相关文章

sticky footer布局,定位底部footer

其作用就是当内容区域比较少时,让footer也能正常定位到底部,以前我们使用js来达到这种效果,其实用css也是完全可以的 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>sticky footer</title> <style type="text/css"> /* 第一

CSS Sticky Footer: 完美的CSS绝对底部

下面是我找到的一个比较完美的方法,来自国外的设计达人,纯CSS,可以实现: 当正文内容很少时,底部位于窗口最下面.当改变窗口高度时,不会出现重叠问题. <div id="wrap"> <div id="main" class="clearfix"> <div id="content"> </div> <div id="side"> </div

sticky footer

sticky footer: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no"> <title> sticky f

【css技能提升】完美的 Sticky Footer 布局

在总结之前所做的项目时,遇到过下面这种情况. 在主体内容不足够多或者未完全加载出来之前,就会导致出现左边的这种情况,原因是因为没有足够的垂直空间使得页脚推到浏览器窗口最底部.但是,我们期望的效果是页脚应该一直处于页面最底部(如右边): 因此我们可以使用 Sticky Footer 布局 来完美实现我们所需要的页面布局. 首先先说一下什么是 "Sticky Footer" 所谓 "Sticky Footer",并不是什么新的前端概念和技术,它指的就是一种网页效果:如果

两种方式实现sticky footer绝对底部

一.什么是sticky footer 如果页面内容不够长的时候,页脚块粘贴在视窗底部:如果内容足够长时,页脚块会被内容向下推送,我们看到的效果就如下面两张图这样.这种效果基本是无处不在的,很受欢迎. 二.第一种方式,利用margin和padding实现 先看效果 下面是代码 <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <title>margin,padding实现

Sticky Footer (让页脚永远停靠在页面底部,而不是根据绝对位置)

<!doctype html><html> <head> <meta charset="UTF-8"> <meta name="Author" content="胡超"> <title>super胡</title> <style> * { margin:0; padding:0; } html,body, #wrap { height: 100%;}

【转载】CSS Sticky Footer: 完美的CSS绝对底部

下面是我找到的一个比较完美的方法,来自国外的设计达人,纯CSS,可以实现: 当正文内容很少时,底部位于窗口最下面.当改变窗口高度时,不会出现重叠问题. <div id="wrap"> <div id="main" class="clearfix"> <div id="content"> </div> <div id="side"> </div

css sticky footer

转载:http://www.w3cplus.com/css3/css-secrets/sticky-footers.html?utm_source=tuicool&utm_medium=referral 在网页设计中,Sticky footers设计是最古老和最常见的效果之一,大多数人都曾经经历过.它可以概括如下:如果页面内容不够长的时候,页脚块粘贴在视窗底部:如果内容足够长时,页脚块会被内容向下推送.

初试 vue2.0——5.项目开发_css sticky footers布局

写在前面的话: 在 w3cplus 上可以看到相关学习资料,本文就是参考了这篇,写下的笔记~,原文 链接 五.css sticky footers布局 一般来说,常会遇到这样的布局:在一个页面的内容不确定的情况下,始终得实现 footer 部分位于页面的底部~ 实现这种布局的方式有很多,据说css sticky footers 是一种兼容性最好的一种布局方式~ 然而最好的方式是:flex 布局~~~ 好用的写在前面,参考原文 1 <!DOCTYPE html> 2 <head> 3