2012-07-30 93 views
1

我刚刚失去了我一生中试图优化IE网站的一小时。我没有这样做的正常方式,我用它像这些技巧对于一些div解决:针对IE优化网站

<!--[if !IE]><!--> 
div1 for non IE 
<!--<![endif]--> 

<!--[if IE]> 
div1 for IE 
<![endif]--> 

现在它在IE中正常工作,但它是确定使用这些类型的解决方案?

+1

看起来很糟糕。我很确定您的非IE代码在IE9中正常工作。 – 2012-07-30 10:21:29

+3

欢迎来到IE的痛苦世界。将来你会失去更多的生命。是的,有时候这些解决方案都可以。他们是最好的解决方案吗?也许,也许不是。 – deceze 2012-07-30 10:21:51

+1

我不会推荐它!不是你不能使用这些,而是​​使用CSS/HTML,你通常可以实现跨浏览器所需的一切 - 总是有客户端脚本来帮助,但这只是我的建议。 – Ryank 2012-07-30 10:23:06

回答

2

当我开发一个网站,我总是说清楚,不同的浏览器解释HTML不同,而且他们的网站也许会发现IE不是在Chrome,Safari浏览器等稍有不同,但整体外观,内涵和功能,将工作。另外,我总是让他们知道,我不会为IE6和更旧版本构建,网站将可见,但一些基本功能和布局原则将无法正常工作。 (我也向他们展示了仍然使用IE6的用户的百分比)。客户是否明确要求提供< IE6网站?额外收费!

这是你应该问的问题是:如何重要的是你,你的网站看起来完全一样在所有浏览器?

对于剩下的,对于跨浏览器的兼容性优化可以为不同的浏览器不同的样式表来完成。不过,我建议尽可能降低样式表的数量,并尝试尽可能使用适用于所有浏览器的CSS属性。

+1

我怀疑任何人现在想要 Christoph 2012-07-30 11:25:52

+0

你会惊讶......但事实上,我这个问题一次。该公司仍然在其网络上运行WinXP和IE6。但是,是的, 2012-07-30 11:44:41

+0

在xp/IE6上运行的公司仍然很常见。 IE6在中国的市场份额仍超过10%。我指的是 Christoph 2012-07-30 14:21:28

1

这是一个相当不错的解决方案,在我在大多数情况下的经验没有必要的。你应该尽量让你的标记一致,并没有改变它的不同版本(也许除了这种怪异的情况下,像表布局的下拉菜单中的IE6)
不过也没关系,有几个样式表为不同的IE版本来处理与不同的IE版本的错误。

<!--[if IE 6]> 
    <link rel="stylesheet" type="text/css" href="ie6.css" /> 
<![endif]--> 
<!--[if IE 7]> 
    <link rel="stylesheet" type="text/css" href="ie7.css"> 
<![endif]--> 
<!--...--> 
<!--[if !IE]><!--> 
    <link rel="stylesheet" type="text/css" href="standard-style.css" /> 
<!--<![endif]--> 
从IE 8上

,你的IE特有的样式表应该是非常VEW线 - 幸运的是,他们从该版本相当符合标准的。