Css 触发IE6中的布局,什么';这是使用*HTMLdiv{height:1%;}的副作用

Css 触发IE6中的布局,什么';这是使用*HTMLdiv{height:1%;}的副作用,css,stylesheet,internet-explorer-6,Css,Stylesheet,Internet Explorer 6,有一段时间,我把*HTMLdiv{zoom:1;}放在我的基本样式表中,效果非常好。然而,我现在遇到了这样的情况:在IE 6中,绝对定位的元素正在失去它们的高度和宽度。所以我想把*HTMLdiv{height:1%;}放在这里,但是有什么副作用呢 更新: 谢谢你的回复。答案很可能是没有副作用,正如你们所说的 然而,我将不得不不同意你关于如何/何时触发haslayout的所有建议(此时此刻)。我认为haslayout是一种理想的行为,因此应该是IE6和IE7中的默认行为 有人提到,不太可能会有任何

有一段时间,我把
*HTMLdiv{zoom:1;}
放在我的基本样式表中,效果非常好。然而,我现在遇到了这样的情况:在IE 6中,绝对定位的元素正在失去它们的高度和宽度。所以我想把
*HTMLdiv{height:1%;}
放在这里,但是有什么副作用呢

更新:

谢谢你的回复。答案很可能是没有副作用,正如你们所说的

然而,我将不得不不同意你关于如何/何时触发haslayout的所有建议(此时此刻)。我认为haslayout是一种理想的行为,因此应该是IE6和IE7中的默认行为

有人提到,不太可能会有任何副作用,确切的原因是,为什么不将其作为默认行为,并仅在出现不良行为(如果有)时将其关闭

可以通过在特定元素上指定
{zoom:auto;}
{height:auto;}
来实现这一点,具体取决于它在基本样式表中的定义方式


我必须向第一个说“没有副作用”的人给出答案,因为每个人的答案都是一样的,而有些答案超出了范围。再次感谢

我尽量减少使用这些变通方法,以避免出现不可预见的问题;当IE6破坏布局时,我只在需要它的元素上使用它,而不是在页面中的所有元素上使用它。

这称为。据我所知,没有副作用,特别是如果你直接为IE6使用
*html
它。我同意其他海报的观点,将其放在标签上可能不是最明智的选择-我会针对造成悲伤的个别元素。

1%的高度应该没有效果,因为IE将尺寸视为最小尺寸。然而,pos:abs无论如何都足以给出haslayout,我同意jeroen的观点,像这样笼统的断言是不明智的。例如,这不是CSS重置中需要的东西。

我也不认为有任何副作用。但正如前面提到的,只在你需要的时候使用它。我个人

  • 仅在集合类上使用它:

    • html.haslayout{height:1%;}
  • 将其放置在通过


  • 希望这能有所帮助

    我一直采用“先做正确,然后修复IE”的方法,所以我从未真正想到过将黑客应用到任何事情上。不过,这可能是我下一个项目中一个有趣的实验。看看它是否能杀死门外的IE6 bug。谢谢你的主意!