当前位置:Gxlcms > html代码 > ie6不支持两个连续class,怎么解决?_html/css_WEB-ITnose

ie6不支持两个连续class,怎么解决?_html/css_WEB-ITnose

时间:2021-07-01 10:21:17 帮助过:20人阅读

											我的颜色 有问题?		我是垫背的	


在ff中 是红色,没问题,这就是向要的效果,
但是 在ie6中 却是蓝色,求解,不改变结构,有办法解决吗?


回复讨论(解决方案)

.i2.on { color:blue; }
都没有这个class名啊

直接.i2就行了啊

直接.i2就行了啊


你没明白我的意思


写成这样

											我的颜色 有问题?		我是垫背的	这样 意思 清楚点。。ff下 是对的 一个红 一个蓝可是 ie6下两个都是蓝。。高手支招,不改变结构,,怎么解决,,,ie6不支持 .i1.on { color:red; } 这样的写法?

刚试了下,ie7、8 都和 ff 一样

唯独 ie6 不认识 .i1.on { 这样连续写的类选择 }

                                            我的颜色 有问题?        我是垫背的    

话说,你指望用IE6去实现HTML5吗? “”

楼主写的CSS跟HTML的使用,根本是混淆的。多看看CSS吧。

LZ没完全理解 css定义

参考 7楼正解



selector1,selector2 同时设置符合两种选择器的元素
selector1 selector2 设置符合selector1的元素的子元素中符合selector2的元素

楼主写的CSS跟HTML的使用,根本是混淆的。多看看CSS吧。

大侠,请你指出哪里混淆了?

.i1.on { color:red; }
.i2.on { color:blue; }
难道这不是 多类选择器么?
除了ie6,其他浏览器均支持。


selector1,selector2 同时设置符合两种选择器的元素
selector1 selector2 设置符合selector1的元素的子元素中符合selector2的元素


这个我明白,
比如
div.test
这个是指

对吧

但是 上面的例子是 .a.b 这样的样式
,ie6不支持这样的多类选择,其他浏览器均可以。




大家最好试试,不要光看,以为我是笔误把 .i1 .on 写成了 .i1.on 这里多个空格少个空格,差了远了去了。









我的颜色 有问题?
我是垫背的




这么写就可以 不能2个class连续 否则无解






我的颜色 有问题? 我是垫背的

仔细的看了下你的代码是你的层叠的优先级问题 而不是不支持

各位评论的在说前仔细测试下谢谢 否则真的误人子弟了

HTML code





我的颜色 有问题? 我是垫背的

这个是什么原因?
ie6 与 其他浏览器 独树一帜,两个都是蓝色,其他浏览器均为 一红一蓝。

看来 ie6 不认识多类,
.i1.on{color:red; }
.i2.on{color:blue; }
这样的格式
它只认 .on
所以就解析成了
.on{color:red; }
.on{color:blue; }
于是乎 两个都为蓝色 。。。。。。。。。。。。。。


来个高手 认同一下啊?


.i1.on { color:red; }
.i2.on { color:blue; }

改成
.i1 .on { color:red; }
.i2 .on { color:blue; }
父元素和子元素关系

这个ie6肯定不支持了

.i1.on { color:red; }
.i2.on { color:blue; }

改成
.i1 .on { color:red; }
.i2 .on { color:blue; }
父元素和子元素关系。好像一般不会这样写

这个ie6肯定不支持了

但是.on怎么区分呢?这样还有优先级问题

引用 17 楼 nx8823520 的回复:
HTML code





我是默认颜色 我的颜色 有问题? 我是垫背的

HTML code








这个例子,ff下 点击 每个li 颜色不同,但在ie6下 就出现了 上述 多类的问题。

如果不从dom、script,只从css中 改这个例子,就是上面说的问题了。

LZ 你仔细看下ID和CLASS的区别

不是说你的这种写法有错误,但是的确不规范,才造成了你现在的困惑
就是通过各种手段 硬把IE6熬成了你所需要的样子 这并不是一劳永逸的最佳手段 下次遇到同样的问题 又会发生困惑了

ID是表示着标签的身份,在JS脚本中会用到id,当JS要修改一个标签的属性时,JS会将id名作为该标签的唯一标识进行操作。也就是说ID只是页面元素的标识,供其他元素脚本等引用。假如你的页面里出现了两个ID那JS效果特性较出现逻辑错误不知道依据哪个ID来改变其标签属性。 在CSS里的ID不一定为JS而设置的,但是同样ID在页面里也只能出现一次,并且是唯一性。虽然可能我们才学DIV+CSS爱好者在一个页面里同时调用相同的ID多次但是仍然没有出现页面混乱错误,但是我们为了W3C及各个标准我们也要遵循ID在一个页面里唯一性。以免出现浏览器兼容问题。


Class 在程序中称“类”,同时在CSS中也书面语也叫“类”。在CSS样式中以小写的“点”及“.”来命名如: .css5{属性:属性值;} ,而在html页面里则以class="css5" 来选择调用,命名好的CSS又叫css选择器。如: .css5{属性:属性值;} 选择器在html调用为“

我是class例子
”如果不知道怎么引用CSS,那就可以了解下css引用。

而且class(类)在同一个html网页页面可以无数次的调用相同的class类,在这里例子里则可以在对应的网页里可以无数次调用选择“css5”。这也说明class一般是用来调用css中的预配制属性的,比如说有一个预配制属性为如这里的“.class01{属性:属性值;} ”,这样就可以像调用函数一样不用再一个网页页面里重复的配置一个“类”属性,而只需要写上一个class类选择,就可以在同一个页面里任何位置调用选择具有相同的CLASS类。


http://www.divcss5.com/rumen/r3.html 这是原地址

http://www.crazyleaves.com/css%E5%A4%9A%E7%B1%BB%E9%80%89%E6%8B%A9%E5%99%A8/

里面有这么一段

在ie6下,如果 .d.controla 和 .d.controlb 反过来写变成 .controla.d 和 .controlb.d。就会出一个诡异的问题。诶,最后在在w3school里的某个页面的最下方,我找到了答案:重要事项:在 IE7 之前的版本中,不同平台的 Internet Explorer 都不能正确地处理多类选择器。

同研究

http://www.crazyleaves.com/css%E5%A4%9A%E7%B1%BB%E9%80%89%E6%8B%A9%E5%99%A8/

里面有这么一段

在ie6下,如果 .d.controla 和 .d.controlb 反过来写变成 .controla.d 和 .controlb.d。就会出一个诡异的问题。诶,最后在在w3school里的某个页面的最下方,我找到了答……

恩 就是这个问题。

看来 25楼的例子 不能从css方面来改了,只能 js 点击时 动态改。


这楼上的方法还真多呀!!
我觉得样式没必要想楼主写的那样,简单描述达到效果就行了。
.i1 { font-size:21px;color:red; }
.i2 { font-size:121px; color:blue;}

这楼上的方法还真多呀!!
我觉得样式没必要想楼主写的那样,简单描述达到效果就行了。
.i1 { font-size:21px;color:red; }
.i2 { font-size:121px; color:blue;}


这个肯定不是 .i1只是设置字体大小而已 真正控制颜色的是.on

(⊙o⊙)…,楼主这样写是及其符合规范滴,为啥有这么多人说楼主“没理解”,“没搞清”呢?

只是IE6不支持而已罢了。http://www.w3school.com.cn/css/css_selector_class.asp

又有好些人没有必要这样写,钻牛角尖的。我现在就碰到了只能用这种方式解决的情况。何其的郁闷啊。

IE7之前的版本不支持多类选择器,所以IE6下的.i1.on和.i2.on不被认识。
IE6只会认识多类选择器最后的元素。例如p.warning.help会匹配class属性中包含help的所有p元素,因为help在选择器中最后出现。
你的例子中,.i1.on在IE6下只会识别.on,所以会把.i1.on和.i2.on看做.on,又因为.i2.on出现在最后,所以显示蓝色

回答问题很多都是新手吧。知道什么叫继承么?误人子弟,不知道这样写,可以大大减少空间,代码的重用率及页面渲染速度。我晕,怎么会有那么多乱七八糟的回答,IE6不支持这种写法,现在的浏览器全支持。

重要事项:在 IE7 之前的版本中,不同平台的 Internet Explorer 都不能正确地处理多类选择器。

人气教程排行