当前位置:首页> 正文
IE6下CSS多类选择符优先级不起作用的bug分析及解决方法
IE6,这个前端开发的梦魇总是在你不经意的时候给你捅一刀。这次碰到的问题是CSS多类选择符的问题。IE6不支持,我们来看一段这样简单的代码:
复制代码代码如下:
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://imgbuyun.weixiu-service.com/up79/202210/2cmlfro2zid.dtd"
html xmlns="http://imgbuyun.weixiu-service.com/up79/202210/3fwzu2xviml"
head
meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
titleIE6多类选择符优先级不起作用的bug/title
style type="text/css"
div{display:block;width:400px;height:200px;}
#id1.c1{background:#ccc;}
.c2.c3{border:1px solid red; /* 边框红色 */}
.c3{border:1px dashed #00F; /* 边框蓝色 */}
/style
/head
body
div id="id1" class="c1"a/div
div id="id2" class="c2 c3"b/div !--IE6下,边框为蓝色,其他浏览器都为红色--
/body
/html
形如 #id1.c1 的选择符,支持性很好,IE6及以上,Firefox,opera,safari等浏览器都支持。形如 .c2.c3 的选择符,在IE6下不支持,后一个类名会覆盖前一个类名,即直接识别为 .c3 ,也就是说,IE6下这种类组合的优先级不如单个类。
所以开发中用多类来组合实现css效果的时候,注意IE6的这个问题。最好的方法就是,不要用这种类组合的形式。
实例二:
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://imgbuyun.weixiu-service.com/up79/202210/2cmlfro2zid.dtd"html xmlns="http://imgbuyun.weixiu-service.com/up79/202210/3fwzu2xviml"headmeta http-equiv="Content-Type" content="text/html; charset=utf-8" /title选择符测试/titlestyle type="text/css" div{display:block;width:400px;height:200px;} #first.son{background:#ccc;} .second.son{border:1px solid red;}/style/headbody div id="first" class="son first" a /div div id="second" class="son second" b /div/body/html
ffcod = delpost.runcode3 .value; ffcod = ffcod.replace(/
/g,’’); delpost.runcode3 .value = ffcod; 提示:您可以先修改部分代码再运行
形如#first.son的选择符,支持性很好,ie6及以上,ff,opera,safari等浏览器都支持。
形如.second.son的选择符,在ie6下不支持,后一个类名会覆盖前一个类名,即直接识别为.son
其实可以利用第二条情况,作为一个针对ie6的hack来使用:
.xxx.son{} 只要.xxx部分是一个不存在的类名。就可以屏蔽ie6之外的浏览器。只对ie6下的.son有效。
这个hack的效果同 selector{ _property:value; } 大体一致。
复制代码代码如下:
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://imgbuyun.weixiu-service.com/up79/202210/2cmlfro2zid.dtd"
html xmlns="http://imgbuyun.weixiu-service.com/up79/202210/3fwzu2xviml"
head
meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
titleIE6多类选择符优先级不起作用的bug/title
style type="text/css"
div{display:block;width:400px;height:200px;}
#id1.c1{background:#ccc;}
.c2.c3{border:1px solid red; /* 边框红色 */}
.c3{border:1px dashed #00F; /* 边框蓝色 */}
/style
/head
body
div id="id1" class="c1"a/div
div id="id2" class="c2 c3"b/div !--IE6下,边框为蓝色,其他浏览器都为红色--
/body
/html
形如 #id1.c1 的选择符,支持性很好,IE6及以上,Firefox,opera,safari等浏览器都支持。形如 .c2.c3 的选择符,在IE6下不支持,后一个类名会覆盖前一个类名,即直接识别为 .c3 ,也就是说,IE6下这种类组合的优先级不如单个类。
所以开发中用多类来组合实现css效果的时候,注意IE6的这个问题。最好的方法就是,不要用这种类组合的形式。
实例二:
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://imgbuyun.weixiu-service.com/up79/202210/2cmlfro2zid.dtd"html xmlns="http://imgbuyun.weixiu-service.com/up79/202210/3fwzu2xviml"headmeta http-equiv="Content-Type" content="text/html; charset=utf-8" /title选择符测试/titlestyle type="text/css" div{display:block;width:400px;height:200px;} #first.son{background:#ccc;} .second.son{border:1px solid red;}/style/headbody div id="first" class="son first" a /div div id="second" class="son second" b /div/body/html
ffcod = delpost.runcode3 .value; ffcod = ffcod.replace(/
/g,’’); delpost.runcode3 .value = ffcod; 提示:您可以先修改部分代码再运行
形如#first.son的选择符,支持性很好,ie6及以上,ff,opera,safari等浏览器都支持。
形如.second.son的选择符,在ie6下不支持,后一个类名会覆盖前一个类名,即直接识别为.son
其实可以利用第二条情况,作为一个针对ie6的hack来使用:
.xxx.son{} 只要.xxx部分是一个不存在的类名。就可以屏蔽ie6之外的浏览器。只对ie6下的.son有效。
这个hack的效果同 selector{ _property:value; } 大体一致。
展开全文阅读
相关内容
-
uc浏览器无痕浏览在哪里设置|手机浏览器开启无
uc浏览器无痕浏览在哪里设置|手机浏览器开启无痕模式的方法,...
-
为什么安装不了软件|windows10系统不能装软件解
为什么安装不了软件|windows10系统不能装软件解决方法,装软件...
-
ivo手机卡顿反应慢怎么办|vivo手机卡顿最正确解
ivo手机卡顿反应慢怎么办|vivo手机卡顿最正确解决方法,卡顿,...
-
网站进不去是怎么回事|网络正常网站开不了的解
网站进不去是怎么回事|网络正常网站开不了的解决方法,网站,网...
-
win11右键怎么设置原来的模样|Windows11右键太
win11右键怎么设置原来的模样|Windows11右键太宽解决方法,右...
-
wifi信号满格但网速慢怎么办|wi-fi信号好但网速
wifi信号满格但网速慢怎么办|wi-fi信号好但网速卡解决方法,信...
-
中国红共享单车怎么收费 街上小红车支持城市有
中国红共享单车怎么收费 街上小红车支持城市有哪些,小红,支持...
-
浏览器怎么扫一扫|浏览器上扫一扫操作方法
浏览器怎么扫一扫|浏览器上扫一扫操作方法,扫一扫,浏览,操作...
-
手机反应变慢了怎么回事|手机用久了卡顿最正确
手机反应变慢了怎么回事|手机用久了卡顿最正确解决方法,手机...
-
苹果手机频繁自动关机怎么办|iphone无缘无故关
苹果手机频繁自动关机怎么办|iphone无缘无故关机解决方法,关...
-
电脑管理员权限怎么解除|修改hosts文件提示没有
电脑管理员权限怎么解除|修改hosts文件提示没有权限解决方法...
-
wegame打开就闪退怎么办|wegame闪退打不开解决
wegame打开就闪退怎么办|wegame闪退打不开解决方法,打不开,解...
-
可以无线充电的手机有哪些品牌|盘点2022年支持
可以无线充电的手机有哪些品牌|盘点2022年支持无线充电的手...
-
为什么苹果手机录屏没有声音|iPhone屏幕录制没
为什么苹果手机录屏没有声音|iPhone屏幕录制没声音解决方法,...
-
提取文字的软件免费那个好用|几款宝藏软件支持
提取文字的软件免费那个好用|几款宝藏软件支持图片免费转文...