应用FF中的CSS样式,但在IE9中它显示划掉

时间:2013-01-17 16:51:43

标签: css firefox internet-explorer-9 responsive-design

我如何解决为什么在IE9中没有应用某些样式...我可以看到当我检查我的firebuglight时它们被划掉了。 但是在FF中,应用了样式,这就是我想要的。 不幸的是,这不是我的CSS或网络应用程序,所以我不熟悉CSS。

我的第二个问题是这个。我也注意到在IE中,该类被多次“覆盖”。含义 - 我看到在类列表中重复了相同的类,具有不同的属性。 在FF中,我只看到一次。如果FF看起来不错,我可以假设我可以删除css文件中类名的所有实例,除了FF在其firebug列表中显示的那个吗?

感谢。

编辑1:

这是一个例子。在IE中,我将以下两种样式应用于标记。 第一个样式中的所有内容都“启用”,但在第二个类中,颜色被禁用。 就像所有填充物一样。

#websiteName {
  color:#65605e;
  float:left;
  letter-spacing:1px;
  padding-bottom:4px;
  padding-left:10px;
  padding-right:10px;
  padding-top:11px;
}    

#websiteName {
  color:#ffffff;
  font-size:150%;
  font-weight:normal;
  margin:0;
  padding-bottom:5px;
  padding-left:10px;
  padding-right:10px;
  padding-top:5px;
  text-align:center;
  width:auto;
}

然而,在FF中,这是我在同一课程中看到的:

#websiteName {
  color:#FFFFFF;
  font-size:150%;
  font-weight:normal;
  margin:0;
  padding:5px 10px;
  text-align:center;
  width:auto;
}

所以在我的CSS中,我搜索了这个类的所有实例。我发现以下内容嵌入了一长串的css代码中:

#webLogo{display:block;width:25%}#websiteName{color:#65605E;letter-spacing:1px;padding:11px 10px 4px;float:left}.dir-rtl #websiteName{float:right}#someotherclass{}

以及此,也嵌入在其他css类定义中。

#websiteName{color:#FFFFFF;text-align:center;width:auto;font-size:150%;font-weight:normal;padding:5px 10px;margin:0}

第二个代码段出现在第一个代码段之后。

编辑2:

我今天下午随机决定将我的显示器更换为运行IE的计算机并猜猜是什么?瞧!现在,该网站在IE中与在我的FF机器上显示的相同。 我只是一个新手,所以我不确定这是否正确,但我开始在我的CSS中查找媒体查询,看看它是否在某处检测浏览器大小。 我还没有找到任何东西,但你可以给我任何关于可能发生的事情的其他想法吗? 感谢。

2 个答案:

答案 0 :(得分:1)

用于解决为什么在IE9中没有应用某些样式的问题&#34 ;;在让有史以来的工具试图帮助您之前,请阅读并理解这一点:http://www.w3.org/TR/CSS21/cascade.html

关注点6.4级联(优先级)

样式表可能有三个不同的来源:作者,用户和用户代理。

Author. The author specifies style sheets for a source document according to the conventions of the document language. For instance, in HTML, style sheets may be included in the document or linked externally.
User: The user may be able to specify style information for a particular document. For example, the user may specify a file that contains a style sheet or the user agent may provide an interface that generates a user style sheet (or behaves as if it did).
User agent: Conforming user agents must apply a default style sheet (or behave as if they did). A user agent's default style sheet should present the elements of the document language in ways that satisfy general presentation expectations for the document language (e.g., for visual browsers, the EM element in HTML is presented using an italic font). See A sample style sheet for HTML for a recommended default style sheet for HTML documents.

对于你的另一个问题:firebug可以设置' setUp'到'仅显示已应用的样式','显示用户代理样式'。尝试按您的喜好显示/隐藏。另外,如果您声明如下内容:

div, td, span, .selector, a {
    color:red;
}

...
<td>
    <div>
        <span>
            <a href="some.link">text link</a>
        </span>
    </div>
</td>
...

然后你检查一个范围内的一个锚点,在一个div内的一个div内,Firebug将显示你应用的样式的4倍(由于你的firebug设置)

答案 1 :(得分:0)

可能是他们在IE中划掉然后应用新样式的原因是他们使用IE特定值来处理那些css规则,这将覆盖任何现有的样式。同样适用于firefox,你可能会看到MOZ只有规则,例如IE不能做所有的事情,因为IE可以忽略那个css。如果你有一个例子,它可能会有所帮助。