2012-04-12 30 views
5

我有以下的HTML标记:CSS规则“.drop.a”被应用到类‘拖动’

<div class="drag a"></div> 
<div class="drop a"></div> 

我也有以下的CSS规则,它应该只适用于我的第二次DIV :

.drop.a 
{ 
    background-color:red; 
} 

这工作正常,除了Internet Explorer 9中的CSS规则应用于这两个元素。

这是为什么?我认为这种CSS与所有浏览器通用兼容?

+0

它可以工作,如果你让他们自己的类,如:drag_a和drop_a? – Samwise 2012-04-12 13:13:06

+0

@Samwise我想它会,因为这些是然后2个分开的整个类。 – Curt 2012-04-12 13:13:49

回答

10

我以为这种CSS可以与所有浏览器兼容?

没有。 IE up to and including version 6 ignores all class selectors in a chain except the last one. IE9可能会让您的页面处于怪癖模式,这意味着它会像其前任一样行事,并将您的.drop.a选择器当作.a来代替。

尝试添加一个文档类型声明到您的页面,看看是否修复它。如果您的网页上已经有一个,并且您仍然看到这种行为,则还有其他问题。

+3

+1谢谢!我将拖/放功能添加到一个必须在2000年初左右创建的页面,而顶层没有文档类型,我不认为要检查。这已经解决了我的问题。我会在6分钟内回答 – Curt 2012-04-12 13:18:45