DIV+CSS相对IE6 IE7和IE8浏览器行为区别及兼容性问题

建站知识 2021-07-03 08:43www.168986.cn长沙网站建设
本文向大家简单描述一下DIV+CSS相对IE6 IE7和IE8兼容问题整理,重点介绍一下IE6 IE7和IE8等浏览器的区别和联系,相信本文介绍一定会让你有所收获。
DIV+CSS相对IE6 IE7和IE8兼容问题整理

1.区别IE和非IE浏览器

复制代码
代码如下:

#tip{
background:blue;/非IE背景藍色/
background:red\9;/IE6、IE7、IE8背景紅色/ }

2.区别IE6,IE7,IE8,FF
【区别符号】「\9」、「」、「_」
【示例】

复制代码
代码如下:

#tip{ background:blue;/Firefox背景变蓝色/
background:red\9;/IE8背景变红色/
background:black;/IE7背景变黑色/
_background:orange;/IE6背景变橘色/ }

【说明】因为IE系列浏览器可读「\9」,而IE6和IE7可读「」(米字号),IE6可辨识「_」(底线),可以依照顺序写下来,就会让浏览器正确的读取到自己看得懂得CSS语法,所以就可以有效区分IE各版本和非IE浏览器(像是Firefox、Opera、GoogleChrome、Safari等)。
3.区别IE6、IE7、Firefox(方法1)
【区别符号】「」、「_」
【示例】

复制代码
代码如下:

#tip{ background:blue;/Firefox背景变蓝色/
background:black;/IE7背景变黑色/
_background:orange;/IE6背景变橘色/ }

【说明】IE7和IE6可读「」(米字号),IE6又可以读「_」(底线),IE7却无法读取「_」,至于Firefox(非IE浏览器)则完全无法辨识「」和「_」,就可以透过这样的差异性来区分IE6、IE7、Firefox
4.区别IE6、IE7、Firefox(方法2)
【区别符号】「」、「!important」
【示例】

复制代码
代码如下:

#tip{ background:blue;/Firefox背景变蓝色/
background:green!important;/IE7背景变绿色/
background:orange;/IE6背景变橘色/ }

【说明】IE7可以辨识「」和「!important」,IE6只可以辨识「」,却无法辨识「!important」,至于Firefox可以读取「!important」但不能辨识「」可以透过这样的差异来有效区隔IE6、IE7、Firefox。
5.区别IE7、Firefox
【区别符号】「」、「!important」
【示例】

复制代码
代码如下:

#tip{ background:blue;/Firefox背景变蓝色/
background:green!important;/IE7背景变绿色/ }

【说明】因为Firefox可以辨识「!important」但却无法辨识「」,而IE7则可以看懂「」、「!important」,可以两个辨识符号来区隔IE7和Firefox。
6.区别IE6、IE7(方法1)
【区别符号】「」、「_」
【示例】

复制代码
代码如下:

#tip{ background:black;/IE7背景变黑色/
_background:orange;/IE6背景变橘色/ }

【说明】IE7和IE6都可以辨识「」(米字号),但IE6可以辨识「_」(底线),IE7却无法辨识,透过IE7无法读取「_」的特性就能轻鬆区隔IE6和IE7之间的差异。
7.区别IE6、IE7(方法2)
【区别符号】「!important」
【示例】

复制代码
代码如下:

#tip{ background:black!important;/IE7背景变黑色/
background:orange;/IE6背景变橘色/ }

【说明】因为IE7可读取「!important;」但IE6却不行,而CSS的读取步骤是从上到下,IE6读取时因无法辨识「!important」而直接跳到下一行读取CSS,所以背景色会呈现橘色。
8.区别IE6、Firefox
【区别符号】「_」
【示例】

复制代码
代码如下:

#tip{ background:black;/Firefox背景变黑色/
_background:orange;/IE6背景变橘色/ }

【说明】因为IE6可以辨识「_」(底线),Firefox却不行,可以透过这样的差异来区隔Firefox和IE6,有效达成CSShack。

另附js方法
1.

复制代码
代码如下:

var isIE6 = (/msie/.test(userAgent) && !/opera/.test(userAgent) && parseInt(browserVersion) < 7 && (!window.XMLHttpRequest || typeof(XMLHttpRequest) === 'function'));

2.

复制代码
代码如下:

var browser=navigator.appName
var b_version=navigator.appVersion
var version=b_version.split(";");
var trim_Version=version[1].replace(/[ ]/g,"");
if(browser=="Microsoft Inter Explorer" && trim_Version=="MSIE6.0") {return true;}else{return false;}

Copyright © 2016-2025 www.168986.cn 狼蚁网络 版权所有 Power by