is there any way to make IE6 understand double classes, say I have a class MenuButton with a color class and possibly a clicked class; like :
.LeftContent a.MenuButton {..general rules..}
.LeftContent a.MenuButton.Orange {..sets background-image..}
.LeftContent a.MenuButton.Clicked {...hum ta dum...}
Now, IE6 understands <a class="MenuButton Orange">
, but when adding
Clicked, like <a class="MenuButton Orange Clicked">
, IE just ignores the
Clicked rule.
Of course, I could rewrite my CSS, and have own rules for .MenuButtonOrange
and such (and it'd probably taken a lot shorter time than asking this question ;-),
but golly, it just so unappealing and Web 0.9...
Cheers!
Dean Edwards' IE7 script adds multiple class support for IE6. See http://code.google.com/p/ie7-js/
IE6 doesn't support multiple class selectors. The reason you see a change with the
Orange
class is becausea.MenuButton.Orange
is interpreted by IE6 asa.Orange
.I recommend structuring your markup in such a way that you can work around this:
By grouping by a more specific ancestor you can create variation with classes scoped by that ancestor (in this example
navmenu
):It's not as good as multiple classes, but I've used it to work around the lack of support in IE.
This isn't quite true. IE6 (and IE7 in Quirks Mode) only remembers one class per selector-part. If you write two, the second one overrides the first. So ‘a.MenuButton.Orange’ is identical in effect to ‘a.Orange’.
So multiple class selectors do still have to be avoided for now.