2012-03-07 68 views
1

我目前正在为本地银行修改网站。他们的大部分客户都在使用IE。我已经使用了我认为与IE7兼容的标准,但它绝对是将它们分开。令人惊讶的是它在IE6中看起来更好一点。我一直在试图运行一个脚本来检测这个。其中许多我在这里找到。无法检测到IE

if($.browser.msie && $.browser.version=="6.0") alert("Please update your version of IE"); 

<!--[if IE 6]> 

内容IE 6

<![if !IE 6]> 

内容不用于IE

和心中已经e也尝试了一些款式切换

<!--[if (gte IE 6)&(lte IE 7)]> 
<link type="text/css" rel="stylesheet" href="ie6-7.css"> 
<![endif]--> 

•所以我想知道是否有人可以借给一些帮助。假设我的代码没有问题。我会发布它,但它是为银行,我不想引起任何问题。

p.s.-为什么在IE中图像周围丑陋边框的边界=“0”修复的任何原因是不推荐使用的元素?他们希望代码在IE中验证并且看起来不错,这完全是可能的吗?

+0

改为使用CSS:'style =“border:0;”'。或者把这个规则放在一个样式表中,它会从所有链接的图像(所有'a'内的'img's)中​​删除边框:'a img {border:0; }' – stackunderflow 2012-06-15 19:26:52

回答

1

你可以使用像jQuery.browser这样的浏览器检测。

但是,更好的解决方案是检测(中断)功能并在不支持的情况下插入polyfill。对此的一个很好的资源是Modernizr,它还提供了相当多的列表polyfills

0

有条件的样式表是完全正确的,并且是IE样式的首选方式。您可以使用专有元素并将其隐藏在其他浏览器中。一切都可以。

border =“0”与许多其他属性一样被弃用,鼓励用户通过css而不是那些丑陋的内联元素(单独的样式和内容)来设置样式元素。

而你的浏览器开关通过$ .browser(我认为它是jQuery?)也没关系。

这应该是有很大的帮助你:caniuseMS compat table

一切都应该被保存和声音,如果你走那条路。