【发布时间】:2012-11-01 21:20:40
【问题描述】:
好的,在任何其他浏览器中一切正常,除了 IE8。我已经连接了 pie.htc 来解决 IE8 的圆角问题。一切正常。然后我发现 IE8 的 html5 存在一些问题。这就是我使用 html5shiv.js 的原因。现在一切都很好,但是一些圆角又变成了方形。它只发生在一个div内。
在 IE8 中使用 pie.htc + html5shiv.js,所有其余的圆角仍然看起来不错。我的意思是 html5shiv.js 没有破坏它们。
我试图解决那个角落的问题,但没有运气: 我搬家了
<!--[if lt IE 9]>
<script src="path/to/html5shiv.js"></script>
<![endif]-->
在 css 加载之前启动。 另外,我放 !important 只是为了确保 .超类{ 行为:网址(/PIE.htc); 位置:相对!重要; } 用于修复该超类的 IE8 圆角。
另外,我尝试使用以下 3 个字符串的大多数组合进行添加:
z-index: 1;
*position:relative!important;
*z-index: 1;
但没有任何帮助。 还能做什么?一旦我删除
<!--[if lt IE 9]>
<script src="path/to/html5shiv.js"></script>
<![endif]-->
圆角再次变圆。 有任何想法吗? 谢谢。
【问题讨论】:
-
将
!important与 CSS3Pie 一起使用是痛苦的秘诀。 CSS3Pie 添加自己的标记来做它的效果并改变原始元素的样式;在它使用的任何样式上的!important标志都会破坏它。这包括position样式。 -
好的,谢谢,我删除了!important。位置:相对;并且 html5shiv.js 位于 css 文件之上。还是没有运气。
-
你是否尝试过旧的
zoom:1hack 来强制 IE 的 hasLayout 标志为元素?这通常使用 CSS3Pie 解决这些问题。但是如果没有看到您的代码在运行,就无法确定。是否有机会链接到演示页面? -
谢谢,刚刚试过 zoom:1; ,仍然没有运气。抱歉,我无法共享代码,它在本地主机上,我无权共享它。仍在努力。如果我找到它,我会发布解决方案。谢谢。
标签: html internet-explorer-8 rounded-corners css3pie html5shiv