什么是haslayout?

2023-12-19

我读过一些关于它的文章,但没有明白到底是什么。有人可以解释一下吗?

是不是只和IE6有关?

什么是zoom:1?

Is layout是只有 IE 的 TAG 吗?

Edit:

我发现此信息对我来说非常有用

因为 Internet Explorer 太旧了 (因为它是最早的浏览器之一 可用),它还没有奢侈 作为当前浏览器重新启动 做。随着时间的推移,微软 开始采用新的发动机来使用 CSS 的。看起来不错……但是,CSS 改变基本假设 Internet Explorer 的引擎是 基于——任何重要的事情 是一个包含其所有内容的矩形 内容。

所以要应对新的标准 CSS,微软决定修复他们的 古老的引擎通过实现 hasLayout 属性,而不是 重建IE。中的每个元素 Internet Explorer 现在有一个 hasLayout 财产。根据元素的不同, 设置为 true 或 false 默认。如果 hasLayout 设置为 true – 该元素是一个独立的盒子 负责渲染本身。 如果为 false – 那么该元素依赖于 具有 hasLayout 的父元素 设置为 true 来渲染它。这是 大多数 IE 错误出现的地方 生活。

source: http://bytesizecss.com/blog/post/fix-haslayout-with-one-line-of-css http://bytesizecss.com/blog/post/fix-haslayout-with-one-line-of-css

我还在这里发现了另一场讨论:http://www.molly.com/2007/03/30/back-to-work-someone-please-clearly-enchanted-haslayout/ http://www.molly.com/2007/03/30/back-to-work-someone-please-clearly-articulate-haslayout/


It's a 非标准HTML 元素上的属性,仅受 IE7 及更低版本支持(IE8 兼容模式也是如此),如果触发,则会导致元素以某种方式呈现(这可能是意外的、随机的、可能是天赐之物,也可能是地狱)。

经典的例子是为元素提供布局,以便它可以清除浮动。

#wrapper { zoom:1; }

该元素现在将包含浮动。除自动/正常之外的任何这些属性和值都将触发布局属性。

* display: inline-block
* height: (any value except auto)
* float: (left or right)
* position: absolute
* width: (any value except auto)
* writing-mode: tb-rl
* zoom: (any value except normal)

请仔细阅读@http://reference.sitepoint.com/css/haslayout http://reference.sitepoint.com/css/haslayout

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

什么是haslayout? 的相关文章

随机推荐