2010-03-31 71 views
273

我有一个样式规则我想应用于标签,当它有两个样式。有什么方法可以在没有JavaScript的情况下执换句话说:选择基于多个类别的元素

<li class='left ui-class-selector'> 

我想申请我的样式规则只有如果li有同时适用.left.ui-class-selector类。

回答

471

你的意思是两个班? “链”中的选择(没有它们之间的空格):

.class1.class2 { 
    /* style here */ 
} 

这种选择与class1所有元素也有class2

你的情况:

li.left.ui-class-selector { 

} 

官方文档:CSS2 class selectors


由于akamike指出与Explorer 6的这种方法在互联网问题,您可能需要阅读此:Use double classes in IE6 CSS?

+6

请注意,IE6不喜欢这些,因为它不读班链。它只会查看连锁店的最后一堂课。 – akamike 2010-03-31 16:55:54

+10

它不是:)所有主要网站都在下降,正在下降或正在计划在不久的将来下降对IE6的支持..也一样! – 2010-03-31 16:58:55

+0

@Andreas Bonini:是的,我知道。说实话,我已经很长时间不关心IE6了。 (我删除了我之前的评论,因为我发现了另一个问题来处理这个问题。) – 2010-03-31 17:01:40

18

链选择并不只是局限于类,你可以为这两个类做和ID。

​​

类&标识

.classA#idB { 
/*style here*/ 
} 

标识&标识

#idA#idB { 
/*style here*/ 
} 

当前所有浏览器都支持这一点,IE 6除外,它基于列表中的最后一个选择器进行选择。所以“.classA.classB”将根据“.classB”选择。

对于你的情况

li.left.ui-class-selector { 
/*style here*/ 
} 

.left.ui-class-selector { 
/*style here*/ 
}