利用box-sizing实现div仿框架

作者:14px 来源:蓝色理想 时间:2009-12-08 15:45:00 

[参与测试的浏览器:IE6 / IE7 / IE8 / FF3 / OP10 / SF4 / Chrome2 ]
[操作系统:Windows]

先看代码:

运行代码框

关键部分

html { -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; padding:100px 0; overflow:hidden;}

原理大概就是这样的

千言万语抵不过一副画,通过整容前后的对比,大家应该能看出box-sizing:border-box的作用了。

了解box-sizing的同学们应该知道,它来自离微国比较遥远的css3世界,因此IE6/IE7是不支持的,但我很负责任滴说:本demo正常兼容IE6/IE7。

因为……

IE6/IE7下,<html>的box-sizing默认值本就是border-box(注:IE7有一点点不正常,overflow:hidden后神志有所恢复,将不影响本demo正常运作)。、

现在的问题就是是不是要采用这个方法了,给点优劣的对比,大家自行斟酌吧:

比较使用绝对定位的方法来实现,这个方法在目前主要存在两个优势:

  1. 针对每种浏览器基本使用的同一方法,css代码简单,易修改、易理解。

  2. 兼容。绝对定位的方法在OP10下存在暂时找不着修复bug的办法,只好绕个弯走了。

它最大的劣势就是欠灵活,如果没有IE6,我想我是坚决选择绝对定位的方法的。

以下为应用实例demo。

运行代码框

一个应注意的问题

不要给body以overflow:hidden,它将会无情地隐藏掉任何在它以外的任何东西,包括top/bottom(header/footer);

一个应理解的要点

[100%+(N)px] 的高度产生的方法:div { height:100%; padding-top:(N)px;}。

标签:box,div,框架
0
投稿

猜你喜欢

  • PHPMyadmin2.10中文显示为乱码的解决办法

    2007-08-22 08:18:00
  • SQL Server转换为XQuery及反向转换

    2009-01-20 13:32:00
  • [ASP]提高数据显示效率--缓存探幽

    2008-05-18 13:51:00
  • 设计的技术含量

    2009-01-12 18:20:00
  • MYSQL启用日志和查看日志

    2010-12-03 16:24:00
  • CSS像素图制作攻略

    2009-05-19 19:32:00
  • 间歇向上无缝翻滚代码

    2008-05-05 12:30:00
  • JMail(4.3版本)发信asp代码

    2007-08-03 12:40:00
  • 多表关联同时更新多条不同的记录方法分享

    2011-11-03 17:34:25
  • “你帮我把这个做成这个样子!”—当我听到这句话

    2009-04-16 12:57:00
  • 触手生春【4.13】CSS中的伪元素选择符

    2008-11-11 13:10:00
  • 手机网站开发必修课[2009总结版]

    2010-01-05 17:02:00
  • SQL Server错误代码大全及解释(留着备用)

    2012-07-11 16:17:03
  • ASP 3.0中的新特性

    2008-02-27 13:28:00
  • ASP实现上传图片到数据库

    2007-09-21 12:59:00
  • Microsoft VBScript 运行时错误 错误 800a0005 无效的过程调用或参数: chr

    2011-03-09 11:03:00
  • 如何用ASP建立Index Server查询对象并为其参数赋值?

    2010-06-11 19:59:00
  • Opera Mini 5 网站开发速记

    2010-04-20 16:29:00
  • Asp 返回引用类型函数代码

    2011-03-10 10:44:00
  • 对fieldset和legend的默认样式一点分析

    2008-07-02 12:56:00
  • asp之家 网络编程 m.aspxhome.com