0

当我使用标签通过以百分比传递宽度值将页面分成列时,即我将主体的 div 宽度声明为 100%,其中两个 div 被声明为 20% 和 80% 宽度,它在 IE8 中工作正常,但在 Firefox 中没有除非我将第二个宽度从 80% 更改为 79%。你能解释一下为什么吗?

4

1 回答 1

2
  1. 定义一个合适的文档类型:<!doctype html> 这对 IE 来说非常重要,因为如果你不这样做,他会使用另一个 boxmodel!

  2. 请注意,当前的 w3c-boxmodel 仅考虑内容宽度。这意味着,如果您声明了边距、边框和/或填充,这会弄乱您的宽度。

如果你定义了 80%/20% 的列,但是它们border:1px ...会弄乱你的设计,因为这实际上意味着 80+20 = 100% + 4px 的边框 -> 你的页面将会中断。

您可以在较新的浏览器中切换 boxmodel (称为 box-sizing:从 IE8 开始)以使用“更好”的 boxmodel,它将填充和/或边框计入您的宽度声明。

编辑:

MDN-Link 关于 box-sizing

于 2012-05-10T12:57:57.953 回答