一个或多个文件中的所有CSS?

时间:2013-06-05 09:20:52

标签: css web

我有1或30个css文件对我的网站有什么影响吗? 我知道我必须有特殊的打印文件,但是现在我说的是我可以在1个文件中使用的休息CSS,但是我把它分成了30个文件。

4 个答案:

答案 0 :(得分:2)

是的,要下载大量单独的文件会对性能产生影响;您将通过组合它们来改善网站的性能。

页面发出的HTTP请求数是页面加载时间的重要因素,因为:

  • 浏览器必须等待所有请求完成才能正确呈现页面,然后才能调用任何设置为在页面加载时运行的Javascript。

  • 浏览器对它们可以同时进行的HTTP请求数量有限制。在某些浏览器中,该限制非常低(旧IE版本低至2)。

  • 您的服务器也会限制同时请求的数量。

如果您有大量单独的文件,所有这些问题都会降低您的网站速度。

有充分理由拥有单独的文件 - 例如,对于缓存,如果某些文件比其他文件更频繁地更改,您可能不希望它们与永不更改的其他文件合并 - 但在大多数情况下,您应该这样做您最好减少页面必须进行的HTTP请求数量。

不要觉得必须将它们全部合并到一个文件中,但是你应该考虑尽可能地减少它们。

此外,IE8及更早版本对允许的CSS文件数量有严格限制 - 它只允许31个CSS文件;超出该限制的任何CSS文件都将被忽略。你可能还没有达到这个限制,但听起来你已经危险地接近它了,如果你不了解它,它有可能会非常难以咬你。只需合并CSS文件即可解决此问题。

答案 1 :(得分:0)

是的,确实如此。您拥有的HTTP请求越少,加载过程就越快。

您可以使用YSlow

分析加载速度

答案 2 :(得分:0)

是的,它确实会影响您网站的速度。

浏览器可以一次下载有限数量的资源(=并行 - 它在浏览器之间有所不同,但它来自一个域的大约4个来源),因此如果你有太多单独的来源导致它们被“阻止”很多HTTP请求。浏览器必须等待完成这些请求,并且在此期间无法继续创建文档。

你应该总是尝试使用尽可能少的文件,缩小它们并可能压缩(gzip)它们。

答案 3 :(得分:0)

是的,肯定会,特别是如果你在一个页面加载上加载所有这些。 30个http请求而不是1个会产生很大的不同。

CSS预处理器

如果您认为将css文件分开可以提供可读性等优点,那么有必要研究使用LessSass之类的css预处理器,因为这些将允许您构建将文件分成一个样式表。