CSS3中的box-sizing属性

来源:asp之家 时间:2010-04-05 21:52:00 

说到 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 相同;

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

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

标签:CSS3,IE6,box-sizing
0
投稿

猜你喜欢

  • MySQL 密码设置

    2024-01-28 11:53:59
  • PHP小白必须要知道的php基础知识(超实用)

    2024-05-13 09:56:42
  • Python中赋值的含义及说明

    2023-01-05 23:11:38
  • python数据可视化绘制火山图示例

    2022-05-08 03:47:56
  • Python语言编写电脑时间自动同步小工具

    2023-12-23 20:46:08
  • python datetime中strptime用法详解

    2022-03-08 19:31:48
  • HTML5中 b 和 i 标签将语义化

    2008-03-16 13:43:00
  • ASP 生成静态新闻列表

    2009-03-03 12:25:00
  • 从0到1构建vueSSR项目之node以及vue-cli3的配置

    2024-04-27 16:06:59
  • Vue传参一箩筐(页面、组件)

    2024-05-29 22:44:13
  • django美化后台django-suit的安装配置操作

    2021-12-19 23:13:25
  • SSB(SQLservice Service Broker) 入门实例介绍

    2024-01-27 14:19:00
  • python区块链实现简版网络

    2023-02-17 01:06:59
  • 解决Python报错:ValueError:operands could not be broadcast together with shapes

    2021-05-14 12:04:53
  • 如何用我的国际域名做虚拟域名?

    2010-06-16 09:53:00
  • 选择utf-8还是GB2312?

    2009-06-19 13:05:00
  • PyTorch中apex安装方式和避免踩坑

    2023-06-20 15:19:57
  • Python函数式编程

    2023-12-29 10:58:46
  • go日志库中的logrus

    2023-07-21 13:48:02
  • 跟老齐学Python之有点简约的元组

    2022-04-11 10:21:43
  • asp之家 网络编程 m.aspxhome.com