IE8 CSS 文件限制

Posted

技术标签:

【中文标题】IE8 CSS 文件限制【英文标题】:IE8 CSS file limit 【发布时间】:2013-04-03 00:30:29 【问题描述】:

我正在向系统的现有网页添加功能。我宁愿在我正在做的改变范围之外进行尽可能少的改变。

问题在于,在 IE8 中查看之前,一切都可以跨浏览器运行。页面浏览量出现了一些奇怪的显示问题,这些问题与我所做的更改无关。

使用 IE Developer 工具,我发现它没有找到应该加载页面源代码的 CSS 文件的样式特征。

我对 IE8 开发工具了解不多,但是当我查看 CSS 选项卡时,我会得到一个 CSS 文件列表。我没有看到列出的有问题的 CSS 文件,所以看起来它由于某种原因没有加载。

我已经添加了两个新的 CSS 文件,所以我可能已经超出了限制。

所以,这听起来像是 IE(尽管 IE9 可以工作)的问题,即应该限制 31 个 CSS 文件可能能够加载:Internet Explorer's CSS rules limits

但在那个列表中,我可以数出超过 31 个 CSS 文件。看起来有 60 多个。但是有些文件是通过 @import 加载的,而有些则没有,所以也许这解释了为什么还有更多。

我如何确定这是问题所在?我在 IE8 开发者控制台中没有看到任何错误。我在没有加载的文件上运行了 CSS Lint——这不是我的。有一些警告,但看起来并不严重。

从我读到的内容看来,这似乎没有好的解决方案。对吗?

【问题讨论】:

你能把你的加到栈顶吗? 我的 CSS 文件实际上正在加载。我似乎已经淘汰了页面上使用的现有 CSS 文件之一——如果没有它,我会看到页面呈现问题。 看起来这个网站一团糟……那么如何将您的 CSS 添加为嵌入式样式表?我假设有某种模板系统,所以你可以将它添加到标题部分一次。另外,如果你碰巧在 php 中,你可以使用这样的东西:github.com/filamentgroup/quickconcat "更像是 60 个" = 你无法修复这个项目。 ;) 是的,IE8 对 CSS 文件的数量有限制,是的,您可以使用 @import 绕过它,但说真的……60 个 CSS 文件?真的吗?这将在 any 浏览器中仅仅从发出的 http 请求的数量给您带来性能问题。在一个写得很好的网站中,绝对没有理由这样做。如果您有很多模块(即每个模块一个或多个 CSS;它加起来),一些 CMS 系统(例如 Drupal)会这样做,但是这些平台中的大多数(至少是好的平台)都有内置的缩小选项,因此您的答案可能只是在管理面板中打开该选项。 【参考方案1】:

我知道我们的目标是尽可能地进行一些更改,但是,如果您手动将至少一些 css 合并到一个文件中,我们会使用 Minify (http://code.google.com/p/minify/)在后端代码中,它将尽最大努力不仅聚合 css 文件,还聚合 javascript 文件。

以仅更改必要内容的名义,您始终可以打开其他 css 文件之一并将 css 粘贴到文件末尾的其中一个中。这是草率的,但如果问题真的来自 IE 中的最大数量的 css 文件,那么这肯定会解决问题。

【讨论】:

以上是关于IE8 CSS 文件限制的主要内容,如果未能解决你的问题,请参考以下文章

ie8 - 当图像只有最大宽度时,将文本宽度限制为图像宽度

textarea字数限制

如何绕过 IE8 32k 数据限制:base64 编码上的 uri?

IE9 中是不是有 CSS 文件大小限制?

IE9 对 CSS 有文件大小限制吗?

[转]客户端js判断文件类型和文件大小即限制上传大小