Css IE6/IE7和透明背景bug-对于所有这些bug,什么是实用的修复方法?
在IE6/IE7中,当有透明背景应用于相关元素时,我会遇到一些奇怪的渲染问题 它们包括但不限于:Css IE6/IE7和透明背景bug-对于所有这些bug,什么是实用的修复方法?,css,internet-explorer-6,internet-explorer-7,Css,Internet Explorer 6,Internet Explorer 7,在IE6/IE7中,当有透明背景应用于相关元素时,我会遇到一些奇怪的渲染问题 它们包括但不限于: 当向上滚动页面时,背景图像会移动,就像应用了填充一样 将鼠标悬停在链接上时,应用于其包含div的背景图像似乎消失 使用下拉菜单时,将鼠标悬停在下拉菜单的包含元素上会关闭鼠标,并调用鼠标退出事件 这些只是我到目前为止必须修复的7个问题中的2个,正如您所看到的,它们没有链接,调试起来很痛苦,我相信在这个项目结束之前,我还会遇到更多问题 为了停止,我修改了一个默认CSS规则,该规则将几乎所有元素都设置
- 当向上滚动页面时,背景图像会移动,就像应用了填充一样
- 将鼠标悬停在链接上时,应用于其包含div的背景图像似乎消失
- 使用下拉菜单时,将鼠标悬停在下拉菜单的包含元素上会关闭鼠标,并调用鼠标退出事件
查看我一直使用的修复程序-只需添加一点javascript并将任何GIF转换为png 这取决于事情的规模,真正决定了它对服务器负载的影响程度。理想情况下,如果您计划将此部署规模扩大,您应该已经在使用最合适的标准方法来处理静态内容:缓存头、静态内容的独立(子)域、反向代理、CDN部署等
在CSS方面,你要么使用Javascript或间隔图像等恶意攻击来绕过IE6/7,要么限制你使用页面样式的方式,使这些问题不存在,因为你没有使用导致这些问题的东西。这真的取决于你觉得什么更重要。取决于事情的规模确实决定了它对服务器负载的影响程度。理想情况下,如果您计划将此部署规模扩大,您应该已经在使用最合适的标准方法来处理静态内容:缓存头、静态内容的独立(子)域、反向代理、CDN部署等
在CSS方面,你要么使用Javascript或间隔图像等恶意攻击来绕过IE6/7,要么限制你使用页面样式的方式,使这些问题不存在,因为你没有使用导致这些问题的东西。这真的取决于你觉得什么更重要。我使用这个css技术为IE<7提供了一个gif文件,其他的都是一个24位的透明png文件
background-image:url(/images/sprites/icons-sprite.png);
_background-image:url(/images/sprites/icons-sprite.gif); /* IE<7 gets the crappy icons */
背景图像:url(/images/sprites/icons-sprite.png);
_背景图像:url(/images/sprite/icons-sprite.gif);/*IE我使用这个css技巧为IE<7提供了一个gif文件,其他所有东西都是一个24位的透明png文件
background-image:url(/images/sprites/icons-sprite.png);
_background-image:url(/images/sprites/icons-sprite.gif); /* IE<7 gets the crappy icons */
背景图像:url(/images/sprites/icons-sprite.png);
_背景图像:url(/images/sprite/icons-sprite.gif);/*看看这篇文章:PNG8-
你需要烟花来修复这个问题。自从我发现了这种文字,我就一直在使用它。主要优点:不同的浏览器不需要不同的图像。PNG8对所有人都有好处。看看这篇文章:PNG8-
你需要烟花来修复这个问题。自从我发现了这种文字,我就一直在使用它。主要优点:不同的浏览器不需要不同的图像。PNG8对所有人都有好处。浏览器只会下载一次spacer.gif资源,然后将其缓存,因此加载性能没有问题。浏览器只会下载一次spacer.gif资源,然后将其缓存,因此加载性能没有问题。
background-image:url(/images/sprites/icons-sprite.png);
_background-image:url(/images/sprites/icons-sprite.gif); /* IE<7 gets the crappy icons */