所有CSS都在一个或多个文件中?

所有CSS都在一个或多个文件中?,css,web,Css,Web,我有1个或30个css文件这一事实对我的网站有什么影响吗? 我知道我必须要有一个特殊的文件来打印,但现在我讲的rest CSS我可以有一个文件,但我把它分成了30个文件。是的,它有。HTTP请求越少,加载过程就越快 您可以使用分析加载速度是的,它确实会影响站点的速度 浏览器可以一次加载有限数量的资源(=并行-浏览器之间有所不同,但一个域中大约有4个源),因此,如果您有太多单独的源,导致大量HTTP请求,则这些源将被“阻止”。浏览器必须等待完成这些请求,在此期间无法继续创建文档 您应该始终尝试使用

我有1个或30个css文件这一事实对我的网站有什么影响吗?
我知道我必须要有一个特殊的文件来打印,但现在我讲的rest CSS我可以有一个文件,但我把它分成了30个文件。

是的,它有。HTTP请求越少,加载过程就越快


您可以使用

分析加载速度是的,它确实会影响站点的速度

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


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

是的,确实如此,尤其是当您在一页加载中加载所有文件时。30个http请求而不是1个将产生很大的不同

CSS预处理器
如果您觉得将css文件分开有助于提高可读性,那么值得研究使用css预处理器,例如或,这样可以将分开的文件构建到一个样式表中。

是的,有大量分开的文件可供下载会影响性能;通过将它们结合起来,您将提高站点的性能

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

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

  • 浏览器对可以同时发出的HTTP请求数量有限制。在某些浏览器中,这一限制非常低(旧IE版本的限制低至2)

  • 您的服务器还将限制同时请求的数量

如果你有很多单独的文件,所有这些问题都会降低你的网站速度

使用单独的文件有很好的理由——例如,为了缓存,如果某些文件的更改频率比其他文件高,您可能不希望它们与从未更改的其他文件合并——但在大多数情况下,您应该尽最大努力减少页面必须发出的HTTP请求数

<>不要觉得你必须把它们全部合并成一个文件,但是你应该尽可能地减少数字。
此外,IE8和更早版本对允许的CSS文件数量有非常严格的限制——它只允许31个CSS文件;任何超过该限制的CSS文件都将被忽略。你可能还没有达到这个极限,但听起来你正在危险地接近它,如果你不知道的话,它可能会狠狠地咬你。这个问题也可以通过简单地合并CSS文件来解决。

最好有1张或少于4张CSS页面,这是因为您的网站速度快。您“必须”定义不同的CSS进行打印并不是真的:您可以在单个CSS中使用
@media print
,并定义特定的打印规则。