为什么IE9不应用带有许多选择器的css?



我遇到了一个特定于IE9的问题,需要一些帮助才能找到它的根源。我们在项目中使用SCSS,随着项目的发展,有时看起来我们有一个带有深层树的文件。

以下是破坏页面布局的SCSS结构(看起来这之后的样式根本没有应用):

.a {
  ...
  .b {
    ...
    .c, .d, .e, .f {
      ...
      .g {
        ...
        .h {
          ... 
        }
      }
    }
  }
}

删除类.h可以解决问题。删除类.f也可以修复此问题。

这种结构IE9也不喜欢:

.a {
  ...
  .b {
    ...
    .c, .d, .e {
      ...
      .g {
        ...
        .h {
          ... 
        }
        .i {
          ... 
        }
      }
    }
  }
}

原因可能是什么?我已经检查了这个问题是否与类名的长度无关。

感谢大家的调查。我已经解决了这个问题,同时最小化了上传示例到jsFiddle的css文件。事实上,我们超过了每个样式表4096个选择器的IE限制,这导致了布局问题。尽管这个浏览器声称有相同的选择器限制,但我仍然不明白为什么在IE8中可以使用相同的css文件。

最新更新