利用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
投稿

猜你喜欢

  • Windows8下安装Python的BeautifulSoup

    2022-05-30 15:03:06
  • 利用Python多处理库处理3D数据详解

    2021-03-05 18:11:18
  • 把你的数据库置于版本控制之下

    2009-04-25 10:01:00
  • Django 多语言教程的实现(i18n)

    2022-12-18 22:41:39
  • Python程序设计入门(1)基本语法简介

    2023-09-12 05:03:31
  • 基于SQL中SET与SELECT赋值的区别详解

    2024-01-20 02:13:17
  • 设置SQLServer数据库中某些表为只读的多种方法分享

    2024-01-23 06:27:47
  • python取均匀不重复的随机数方式

    2022-07-06 15:28:02
  • PyTorch 解决Dataset和Dataloader遇到的问题

    2023-10-14 04:37:50
  • BootStrap数据表格实例代码

    2024-05-09 14:56:15
  • 使用keras内置的模型进行图片预测实例

    2021-12-27 17:54:29
  • Python基于jieba分词实现snownlp情感分析

    2023-11-14 21:43:38
  • 利用Python-iGraph如何绘制贴吧/微博的好友关系图详解

    2022-02-26 07:16:32
  • 解决python "No module named pip"的问题

    2021-02-18 13:32:50
  • asp如何同时处理数据库和页面错误?

    2010-06-07 20:58:00
  • 基于Python制作公交车站查询系统

    2022-10-03 04:34:03
  • pycharm开发一个简单界面和通用mvc模板(操作方法图解)

    2022-10-09 06:28:39
  • FrontPage2002简明教程六:图片库

    2008-09-17 11:30:00
  • js实现屏蔽默认快捷键调用自定义事件示例

    2023-09-05 09:28:31
  • Python实现读取大量Excel文件并跨文件批量计算平均值

    2023-10-21 06:53:12
  • asp之家 网络编程 m.aspxhome.com