2

可能重复:
缩放有什么错误:1;在 CSS 中修复?

如果我没记错的话,CSS 属性的默认zoom值为1. 在最近 6 或 7 个关于 CSS 的在线代码文件中,我在代码的某处看到了这段神秘的代码:

zoom: 1;

这段标记有语义吗?他们包含它有什么原因吗?

4

1 回答 1

7

使用此规则是激活HTML 元素的hasLayout属性的最快(通常也是最干净的)方法。反过来,这会影响(通常以积极的方式)它在旧版本的 Internet Explorer 中的呈现:

在 Internet Explorer 中,元素要么负责调整其自身内容的大小和排列,要么依赖父元素来调整其内容的大小和排列。

为了适应这两个不同的概念,渲染引擎使用了一个名为的属性,该属性hasLayout可以具有相关元素的值truefalsehasLayout当属性值为 true时,我们说元素获得布局或具有布局。1

当一个元素具有布局时,它负责调整和定位自身以及可能的任何后代元素。简单来说,这意味着元素更关心自身及其内容,而不是依赖祖先元素来完成所有工作。因此,默认情况下,某些元素将具有布局,尽管大多数元素没有。

我也推荐阅读这篇文章(引用实际上来自那里)。

于 2012-10-02T11:00:35.057 回答