CSS3 box-sizing属性


Posted in HTML / CSS onApril 17, 2009

说到 IE 的 bug,一个臭名昭著的例子是它对于“盒模型”的错误解释:在 IE5.x 以及 Quirks 模式的 IE6/7 中,将 border 与 padding 都包含在 width 之内。这为前端工程师的工作平添了不少麻烦,几户每个需要定义尺寸的 box 都要思量一下:是否触发了“盒模型 bug”?

同时,由于另一撮浏览器对标准的遵从,我们在精确定义一个在有限空间内显示的 box 时,也需要计算一下:留给它的空间只有那么大,刨去 border 和 padding,我们该把它的 width 写成多少呢?

这种情况在 CSS3 时代有了改善,得益于这个叫做 box-sizing 的属性,它具有“content-box”和“border-box”两个值。

  • 定义 box-sizing: content-box; 时,浏览器对盒模型的解释遵从我们之前认识到的 W3C 标准;
  • 定义 box-sizing: border-box; 时,浏览器对盒模型的解释与 IE6 相同;

CSS3 box-sizing属性

为什么说这个属性“迟来”呢?IE 对于盒模型的解释固然不符合 W3C 的规范,但是也有它的好处:无论如何改动 border 与 padding 的值,都不会导致 box 总尺寸发生变化,也就不会打乱页面整体布局。而在 Firefox 等现代浏览器下,如果我们要改变一下 padding 的值,就不得不重新计算 box 的 width。现在 IE6 寿终正寝,这个 CSS 属性未免有些姗姗来迟。

试用这个新属性,Firefox 请使用 -moz-box-sizing,Safari / WebKit 请使用 -webkit-box-sizing,Opera 直接用 box-sizing 即可。

HTML / CSS 相关文章推荐
CSS3 优势以及网页设计师如何使用CSS3技术
Jul 29 HTML / CSS
CSS3 特效范例整理
Aug 22 HTML / CSS
纯CSS3单页切换导航菜单界面设计的简单实现
Aug 16 HTML / CSS
详解CSS3中的box-sizing(content-box与border-box)
Apr 19 HTML / CSS
五个2015 年最佳HTML5 框架
Nov 11 HTML / CSS
12个不为大家熟知的HTML5设计小技巧
Jun 02 HTML / CSS
关于canvas绘制模糊问题的解决方法
Sep 24 HTML / CSS
html5利用canvas实现颜色容差抠图功能
Dec 23 HTML / CSS
html5 datalist 选中option选项后的触发事件
Mar 05 HTML / CSS
基于html5 canvas做批改作业的小插件
May 20 HTML / CSS
CSS 一行代码实现头像与国旗的融合
Oct 24 HTML / CSS
如何用H5实现好玩的2048小游戏
Jul 23 HTML / CSS
CSS3伪类选择器:nth-child()
Apr 02 #HTML / CSS
CSS3教程:新增加的结构伪类
Apr 02 #HTML / CSS
CSS3五个技巧给你的网站带来出色的效果
Apr 02 #HTML / CSS
CSS3教程:边框属性border的极致应用
Apr 02 #HTML / CSS
CSS3中的5个有趣的新技术
Apr 02 #HTML / CSS
介绍CSS3使用技巧5个
Apr 02 #HTML / CSS
CSS3教程(1):什么是CSS3
Apr 02 #HTML / CSS
You might like
论坛头像随机变换代码
2006/10/09 PHP
Smarty结合Ajax实现无刷新留言本实例
2007/01/02 PHP
php自定义session示例分享
2014/04/22 PHP
PHPThumb图片处理实例
2014/05/03 PHP
php中通过DirectoryIterator删除整个目录的方法
2015/03/13 PHP
在laravel中使用Symfony的Crawler组件分析HTML
2017/06/19 PHP
js操作时间(年-月-日 时-分-秒 星期几)
2010/06/20 Javascript
javascript 弹出层组件(升级版)
2011/05/12 Javascript
jQuery回调函数的定义及用法实例
2014/12/23 Javascript
JS随机洗牌算法之数组随机排序
2016/03/23 Javascript
BootStrap中的table实现数据填充与分页应用小结
2016/05/26 Javascript
Easy UI动态树点击文字实现展开关闭功能
2017/09/30 Javascript
jQuery除指定区域外点击任何地方隐藏DIV功能
2017/11/13 jQuery
vue组件的写法汇总
2018/04/12 Javascript
jQuery实现的简单对话框拖动功能示例
2018/06/05 jQuery
vue中使用带隐藏文本信息的图片、图片水印的方法
2020/04/24 Javascript
python的random模块及加权随机算法的python实现方法
2017/01/04 Python
Python3基于sax解析xml操作示例
2018/05/22 Python
python 对txt中每行内容进行批量替换的方法
2018/07/11 Python
python的re模块使用方法详解
2019/07/26 Python
django 简单实现登录验证给你
2019/11/06 Python
python实现局域网内实时通信代码
2019/12/22 Python
python+opencv边缘提取与各函数参数解析
2020/03/09 Python
Python 解析库json及jsonpath pickle的实现
2020/08/17 Python
纯CSS3实现给头像加个光芒四射且旋转的背景动画效果
2014/05/07 HTML / CSS
CSS3+HTML5+JS 实现一个块的收缩与展开动画效果
2020/11/17 HTML / CSS
解析html5 canvas实现背景鼠标连线动态效果代码
2019/06/17 HTML / CSS
金宝贝童装官网:Gymboree
2016/08/31 全球购物
Stuarts London美国/加拿大:世界领先的独立男装零售商之一
2019/03/18 全球购物
Fox Racing官方网站:越野摩托车和山地自行车装备和服装
2019/12/23 全球购物
单位人事专员介绍信
2014/01/11 职场文书
关于环保的标语
2014/06/13 职场文书
HR求职自荐信范文
2014/06/21 职场文书
党委工作总结2015
2015/04/27 职场文书
学校2016年全国助残日活动总结
2016/04/01 职场文书
JS中如何优雅的使用async await详解
2021/10/05 Javascript