HTML和CSS中如何判断ie各版本浏览器的方法

html-css08

HTML和CSS中如何判断ie各版本浏览器的方法,第1张

html中区分ie各版本的方法为IE有条件注释,不过这种方式只支持到IE9(包括IE9),在IE10之后移除了该特性;不建议使用;

css中判断IE各版本,只能通过css hack方式,针对浏览器的怪癖行为来区分;不建议使用;

通过js处理浏览器的用户代理userAgent字符串来解析出浏览器的版本,虽然这种方式也不建议使用,但是目前能解析出浏览器类型及版本最好的办法了

IE8现在还没有很好的解决兼容性的办法,但是IE8有一个方式是可以降低到IE7版本浏览。就是在每个以完成的页面源码中添加这句话:<meta http-equiv="X-UA-Compatible" content="IE=7" />这样,我们做好的成品页面即使在IE8中测试不兼容,加上上面那段代码,就可以把IE8的兼容性视图降低至IE7,一切就正常啦!以下是css兼容IE6、IE7和FF的方法:区分IE6,IE7,firefox

区别不同浏览器,CSS hack写法:

区别IE6与FF:

background:orange*background:blue

区别IE6与IE7:

background:green !importantbackground:blue

区别IE7与FF:

background:orange*background:green

区别FF,IE7,IE6:

background:orange*background:green_background:blue

background:orange*background:green !important*background:blue

注:IE都能识别*标准浏览器(如FF)不能识别*;

IE6能识别*,但不能识别 !important,

IE7能识别*,也能识别!important

FF不能识别*,但能识别!important

问题描述:CSS的编码不对的时候,CSS效果在IE8、IE7、Firefox下可以正常显示,但是在IE6下会使CSS失效,不起作用。

情况分析:今天做一个网站的时候碰到这个问题,搞了半宿没有找到问题所在,着实让我郁闷了好一会,后来上Google和百度了一下,找到了问题所在,CSS文件的编码不正确,网页采用的是utf-8编码的,而CSS是使用的是ANSI编码的,这种情况在IE8、IE7和Firefox可以被识别CSS样式会正常显示,但是IE6及其以下版本都不认识,导致了上面问题描述的情况。

解决办法:将网页和CSS文件的编码使用一样的,就可以了,建议将CSS文件的样式修改使其和网页保持一致。修改CSS文件的编码方式可以使用Editplus将CSS文件打开,然后“另存为”,在“编码”中选择与网页一致的编码方式,然后确定覆盖原来文件就可以了。

转载自:

http://www.shuihan.com/article/466.htm