0

我正在使用 ExtJS 4.1.1,并且某些组件在 IE7 中未按预期显示。我检查ext-all-scoped.css并注意到这两个类.x-reset .x-ie没有以正确的顺序出现,因此没有应用样式。我想我可以简单地用正确的 () 替换这个字符串,.x-ie .x-reset但是文件中存在许多不同的情况,例如.x-reset .x-strict .x-ie7,.x-reset .x-quirks .x-ie8等等。因此,我宁愿重新编译整个 CSS 文件。有人知道如何进行吗?

我不再孤单 : Sencha 论坛:) 但我仍然不知道该怎么做 :(


编辑

我并不为此感到自豪,但我最终决定对每个损坏的选择器执行自动替换。乍一看,我的问题似乎已经解决了。您可以在下面看到我所做的所有替换的列表(仅限 IE)。如果你想做同样的事情,不要忘记在每行的两边都包含额外的空格,这将防止你破坏选择器的组合,比如.x-some-class.x-reset. 请注意,这是一个肮脏且临时的解决方案,可能会导致意外错误,您应该尝试更标准的方法

 .x-reset .x-quirks .x-ie9p // broken
 .x-quirks .x-ie9p .x-reset // fixed

 .x-reset .x-quirks .x-ie 
 .x-quirks .x-ie .x-reset 

 .x-reset .x-quirks .x-ie7 
 .x-quirks .x-ie7 .x-reset 

 .x-reset .x-quirks .x-ie8 
 .x-quirks .x-ie8 .x-reset 

 .x-reset .x-quirks .x-ie9 
 .x-quirks .x-ie9 .x-reset 

 .x-reset .x-strict .x-ie7m 
 .x-strict .x-ie7m .x-reset 

 .x-reset .x-strict .x-ie6 
 .x-strict .x-ie6 .x-reset 

 .x-reset .x-strict .x-ie7 
 .x-strict .x-ie7 .x-reset 

 .x-reset .x-strict .x-ie8 
 .x-strict .x-ie8 .x-reset 

 .x-reset .x-strict .x-ie9 
 .x-strict .x-ie9 .x-reset 

 .x-reset * html .x-ie 
 * html .x-ie .x-reset 

 .x-reset .x-nbr.x-ie 
 .x-nbr.x-ie .x-reset 

 .x-reset .x-ie7m 
 .x-ie7m .x-reset 

 .x-reset .x-ie8m 
 .x-ie8m .x-reset 

 .x-reset .x-ie6 
 .x-ie6 .x-reset 

 .x-reset .x-ie7 
 .x-ie7 .x-reset 

 .x-reset .x-ie8 
 .x-ie8 .x-reset 

 .x-reset .x-ie9 
 .x-ie9 .x-reset 

 .x-reset .x-ie 
 .x-ie .x-reset 
4

1 回答 1

0
I think if you don't want to recompile the entire CSS use different CSS file for IE browsers as below.

    <!--[if IE 7.0]><link href="css/ie7.css" type="text/css" media="screen" rel="stylesheet" /><![endif]-->
    <!--[if IE 8.0]><link href="css/ie8.css" type="text/css" media="screen" rel="stylesheet" /><![endif]-->
    <!--[if IE 9.0]><link href="css/ie8.css" type="text/css" media="screen" rel="stylesheet" /><![endif]-->
于 2013-08-19T12:53:30.883 回答