【发布时间】:2012-04-12 00:04:17
【问题描述】:
我阅读了有关 Internet Explorer 愚蠢的 CSS 限制的相互矛盾的信息。我(想我是)理解你只能有 31 个 <style> 和 <link> 标签(组合),并且每张表最多可以有 31 个 @import-s(所以 31 个<link>-s,每个到 31 @import-s 很好,虽然很疯狂)。
但是,4095 规则不太清楚 - 这是每个文档还是每个工作表的 4095 规则?例如,我可以 <link> 到两个样式表,每个样式表都有 4000 条规则,并让它工作,或者这会打破限制吗?
3rd 方编辑 2018
在此msdn blog post stylesheet-limits-in-internet-explorer 上提供了更多信息。
【问题讨论】:
-
根据habdas.org/2010/05/30/msie-4095-selector-limit,每个文档似乎有 4095 个限制,还有一个测试页面的链接,您可以自己尝试
-
为什么在一个页面上需要 30 多个样式表呢?为什么需要 4,000 条规则?即使是我最复杂的页面也几乎没有超过 1,000 个节点,因此每个节点平均必须有超过 4 条规则才能达到限制...
-
@Kolink 一些(糟糕的)内容管理系统使用的模板可能会导致包含许多 CSS 文件。不幸的是,我已经多次看到达到 31
<style>的限制 -
@Kolink - 我正在组件化我的 Web 应用程序。在我目前的尝试中,30 个组件 = 30 个(微小的)样式表,加上其他常见的嫌疑人,例如 normalize.css。换句话说,我可能正在实现类似于 andyb 所说的“坏”的东西。 :P
-
我也在用组件制作我的网站,但每个页面都清楚地定义了它需要哪些组件并导入它们。也许您正在加载不需要的组件,或者您的组件过于具体,您应该将一些组件组合在一起 - 如果不了解更多信息,我无法判断。
标签: css internet-explorer stylesheet