1. 两列定宽和两列宽度自适应结构:
    1. 在ie7及以下,container的宽度和两列子元素的宽度设置为具体值或百分比的任意组合时,两列子元素即使浮动,container的高度也能自适应;其他浏览器需要为container清除浮动。
    2. 在ie7及以下,container的宽度设置为默认值auto时,container高度不能自适应,此时footer的位置会上移;两列宽度固定或自适应且和等于container的宽度时,假设footer宽度为auto,footer会出现在短的那一列的下方,如果短的一列在右边,那么footer的左边界与高的一列的右边界重合,如果短的一列在左边,那么footer的右边界与高的一列的左边界重合;两列宽度固定或自适应且和小于container的宽度时,如果两列分别左右浮动,那么footer就出现在两列间的缝隙中,宽度就是缝隙的宽度,如果两列仅向一边浮动,那么footer就出现在两列的另一侧,宽度为container宽度与两列宽度之差。
    3. 在第2点的基础上,假设设置了footer的宽度,它的边界计算规则不变,但是如果它的宽度超出了第2点所说的位置的宽度,那么就会下移。
    4. 解决第2/3点的办法是给footer清浮动,这样它就总是在两列之下了;对于其他浏览器仅为container清除浮动即可,同时设置并不会互相影响。
    5. 总结:非标准浏览器不支持伪类,因此清除不了container的浮动,只能用clear清除footer的浮动;标准浏览器只需要用:after来清除container的浮动,为了兼容,两个清除都要有。
  2. 两列等高:
    1. 背景模拟:为container添加背景图像,这种方法只能应用于两列定宽的情况,而且如果两列的位置发生变换,背景图也需更改。
    2. 负边距:为两列都设置margin-bottom:-9999px;padding-bottom:9999px; padding-bottom让列的背景色在垂直方向上“无限”延伸,但这样也会撑开容器,因此用负的margin-bottom将footer拉回到原来的位置;最后别忘了,要让container的overflow:hidden来隐藏掉由于padding-bottom撑开的高度。
    3. 用js脚本实现

css学习笔记 9的更多相关文章

  1. CSS学习笔记

    CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...

  2. HTML+CSS学习笔记 (7) - CSS样式基本知识

    HTML+CSS学习笔记 (7) - CSS样式基本知识 内联式css样式,直接写在现有的HTML标签中 CSS样式可以写在哪些地方呢?从CSS 样式代码插入的形式来看基本可以分为以下3种:内联式.嵌 ...

  3. HTML+CSS学习笔记 (6) - 开始学习CSS

    HTML+CSS学习笔记 (6) - 开始学习CSS 认识CSS样式 CSS全称为"层叠样式表 (Cascading Style Sheets)",它主要是用于定义HTML内容在浏 ...

  4. HTML+CSS学习笔记(5)- 与浏览者交互,表单标签

    HTML+CSS学习笔记(5)- 与浏览者交互,表单标签 1.使用表单标签,与用户交互 网站怎样与用户进行交互?答案是使用HTML表单(form).表单是可以把浏览者输入的数据传送到服务器端,这样服务 ...

  5. HTML+CSS学习笔记(4) - 认识标签(3)

    HTML+CSS学习笔记(4) - 认识标签(3) 1.使用<a>标签,链接到另一个页面 使用<a>标签可实现超链接,它在网页制作中可以说是无处不在,只要有链接的地方,就会有这 ...

  6. HTML+CSS学习笔记(3)- 认识标签(2)

    HTML+CSS学习笔记(3)- 认识标签(2) 1.使用ul,添加新闻信息列表 在浏览网页时,你会发现网页上有很多信息的列表,如新闻列表.图片列表, 这些列表就可以使用ul-li标签来完成.ul-l ...

  7. HTML+CSS学习笔记(2) - 认识标签(1)

    HTML+CSS学习笔记(2) - 认识标签(1) 1.语义化,让你的网页更好的被搜索引擎理解 标签的用途: 我们学习网页制作时,常常会听到一个词,语义化.那么什么叫做语义化呢,说的通俗点就是:明白每 ...

  8. HTML+CSS学习笔记(1) - Html介绍

    HTML+CSS学习笔记(1) - Html介绍 1.代码初体验,制作我的第一个网页 <!DOCTYPE HTML> <html> <head> <meta ...

  9. css学习笔记四

    广州天气变冷了,css学习笔记还是要总结. 总结: 1:几米页面静态页面主要是一列结构头部banner图,mainbody部分放文字内容和图书图片,底部是页面的版权信息 2:腾讯软件中心静态页面制作( ...

  10. CSS学习笔记:溢出文本省略(text-overflow)

    原文:CSS学习笔记:溢出文本省略(text-overflow) 在CSS3中,text-overflow属性的基本语法如下: clip:表示不显示省略文本,简单的裁切. ellipsis:表示对象文 ...

随机推荐

  1. angular_ui-router ——依赖注入

    Angularjs ui-router - 组件: $state / $stateProvider:管理状态定义.当前状态和状态转换.包含触发状态转换的事件和回调函数,异步解决目标状态的任何依赖项,更 ...

  2. 使用XSHELL连接EC2虚拟机实例

    sudo passwd root #输入2次密码给root用户设定密码 su - passwd ec2-user #输入两次密码给ec2-user用户设定密码 sed -ri 's/^#?(Passw ...

  3. 20160929001 Guid生成

    全局唯一标识符(GUID,Globally Unique Identifier)是一种由算法生成的二进制长度为128位的数字标识符.   using System; namespace GUID测试 ...

  4. 轻松实现Android,iOS的一个手势动画效果

    先来看效果 这是iOS下的效果,android下完全一致.通过do_GestureView组件和do_Animation组件,deviceone能很容易实现复杂的跨平台纯原生动画效果,这个示例就是通过 ...

  5. Metro-Ural119递推

    Time limit: 0.5 second Memory limit: 64 MB Many of SKB Kontur programmers like to get to work by Met ...

  6. laravel框架总结(九) -- 软删除

    当模型被软删除时,它们并不会真的从数据库中被移除.而是会在模型上设置一个 deleted_at 属性并将其添加到数据库.如果对应模型被软删除,则deleted_at字段的值为删除时间,否则该值为空. ...

  7. Android静默安装实现方案

    之前有很多朋友都问过我,在Android系统中怎样才能实现静默安装呢?所谓的静默安装,就是不用弹出系统的安装界面,在不影响用户任何操作的情况下不知不觉地将程序装好.虽说这种方式看上去不打搅用户,但是却 ...

  8. Java生成带小图标的二维码-google zxing 工具类

    近期一直忙于开发微信商城项目,应客户要求,要开发个有图标的二维码.经过两次改版,终于实现了该功能(第一次没有小图标,这次才整合好的),如下是完整代码 . 该代码使用Java7开发,另外使用 core- ...

  9. java.net.UnknownHostException: promote.cache-dns.local: unknown error

    一.错误 程序启动时提示如下错误: java.net.UnknownHostException: promote.cache-dns.local: unknown error 直译就是: 主机名pro ...

  10. Nexpose下载安装注册一条龙

    附上两个下载链接: Windows版本(64bit) : http://download2.rapid7.com/download/NeXpose-v4/NeXposeSetup-Windows64. ...