zoukankan      html  css  js  c++  java
  • DIV+CSS:页脚永远保持在页面底部

    页脚永远保持在页面底部

      有时候,我们用CSS创建一个高度自适应布局,如何保证页脚(footer)在内容不超过一屏的情况下始终保持在布局最下方是一个比较头疼的事。我看过一些利用绝对定位的例子,但总感觉不是那么完美,经过一下午的研究总结出一个利用负值外补丁的方法来实现这个效果的方法,兼容IE5.0 ,Opera 8.5 ,Firefox 1.5 。下面我们看步骤:

    1、为了让浏览器识别高度100%我们需要先给 html 和 body 加上一个高度值,同时清除所有元素的 margin 和 padding。经测试,html和body的 height: 100%; 等于整个浏览器窗口的总高度,无论内容是否超过一屏。而它们下一级子元素 height: 100%; 则等于第一屏的高度。是不是有点不好理解?

    css 代码
     
    1. * {
    2. margin: 0;
    3. padding: 0;
    4. }
    5. html, body {
    6. height: 100%;
    7. }

    2、因为上面提到的问题,所以为了让布局自适应高度,我们要加上 min-height: 100%;,虽然IE不支持这个属性但是IE的 height: 100%; 有同样的作用:

    css 代码
     
    1. #wrapper {
    2. min-height: 100%;
    3. }
    4. * html #wrapper {
    5. height: 100%;
    6. }

    这样,一个最简单的最小高度满一屏的自适应布局就做好了。为了便于查看,我加了一些宽度和背景色修饰,如下:

    css 代码
     
    1. * {
    2. margin: 0;
    3. padding: 0;
    4. }
    5. html, body {
    6. height: 100%;
    7. text-align: center;
    8. font: 12px/1.4 Verdana, sans-serif;
    9. background: #f00;
    10. }
    11. #wrapper {
    12.  770px;
    13. min-height: 100%;
    14. background: #ccc;
    15. margin: auto;
    16. text-align: left;
    17. }
    18. * html #wrapper {
    19. height: 100%;
    20. }

    下面看完整代码的运行效果:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <br /><br />
    <html xmlns="http://www.w3.org/1999/xhtml"> <br /><br />
    <head> <br /><br />
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <br /><br />
    <title>DIV+CSS:页脚永远保持在页面底部 _  海波吧 _ www.haibor8.cn </title> <br /><br />
    <style type="text/css"> <br /><br />
    /*<![CDATA[*/ <br /><br />
    * { <br /><br />
     margin: 0; <br /><br />
     padding: 0; <br /><br />
    } <br /><br />
    html, body { <br /><br />
     height: 100%; <br /><br />
     text-align: center; <br /><br />
     font: 12px/1.4 Verdana, sans-serif; <br /><br />
     background: #F00; <br /><br />
    } <br /><br />
    #wrapper { <br /><br />
      770px; <br /><br />
     min-height: 100%; <br /><br />
     background: #ccc; <br /><br />
     margin: auto; <br /><br />
     text-align: left; <br /><br />
    } <br /><br />
    * html #wrapper { <br /><br />
     height: 100%; <br /><br />
    } <br /><br />
    #header { <br /><br />
     background: Green; <br /><br />
     height: 40px; <br /><br />
    } <br /><br />
    #sidebar { <br /><br />
     float: left; <br /><br />
      200px; <br /><br />
     background: Gray; <br /><br />
    } <br /><br />
    #content-box { <br /><br />
     float: right; <br /><br />
      570px; <br /><br />
     background: Olive; <br /><br />
    } <br /><br />
    #footer { <br /><br />
     height: 50px; <br /><br />
     background: Background; <br /><br />
     770px; <br /><br />
     margin: auto; <br /><br />
    } <br /><br />
    /*]]>*/ <br /><br />
    </style> <br /><br />
    </head> <br /><br />
    <br /><br />
    <body> <br /><br />
    <div id="wrapper"> <br /><br />
      <div id="header">此处显示  "header" 的内容</div> <br /><br />
      <div id="content-box">此处显示  "content-box" 的内容</div> <br /><br />
      <div id="sidebar">此处显示  i"sidebar" 的内容</div> <br /><br />
    </div> <br /><br />
    <div id="footer">此处显示   "footer" 的内容</div> <br /><br />
    </body> <br /><br />
    </html>
    

      

  • 相关阅读:
    UI是一个状态机
    WPF : Binding的3个属性: Source, RelativeSource, ElementName
    业务驱动设计
    WPF : 对Collection要注意重用子控件
    WPF : UserControl的Initialized事件不会触发
    mvc3上传图片
    MVC3.0自定义视图引擎(切换皮肤)
    ASP.NET MVC 多语言解决方案
    键盘键位表
    Silverlight之IsolatedStorageSettings对象
  • 原文地址:https://www.cnblogs.com/goody9807/p/5173072.html
Copyright © 2011-2022 走看看