为了提高性能,是否使用一个或多个css文件?
我想知道是否最好为CSS文件创建一个或多个文件 我经常看到网站上有大量的css文件,但它只能使用一个大文件为了提高性能,是否使用一个或多个css文件?,css,performance,Css,Performance,我想知道是否最好为CSS文件创建一个或多个文件 我经常看到网站上有大量的css文件,但它只能使用一个大文件 您的建议是什么?就性能而言,您最好只使用一个文件,因为它会导致一个连接和对服务器的请求(从时间上看,这些操作往往是昂贵的) 这就是框架存在的原因,它将每个页面的所有CSS(和JavaScript)文件合并在一起,并在一个请求中为它们提供服务。好吧,和Yahoo一样s:使用一个来减少HTTP请求的数量。不同的HTTP请求几乎不是这里的瓶颈,文件大小最终是瓶颈。最好尽可能多地分割内容的原因是,
您的建议是什么?就性能而言,您最好只使用一个文件,因为它会导致一个连接和对服务器的请求(从时间上看,这些操作往往是昂贵的)
这就是框架存在的原因,它将每个页面的所有CSS(和JavaScript)文件合并在一起,并在一个请求中为它们提供服务。好吧,和Yahoo一样s:使用一个来减少HTTP请求的数量。不同的HTTP请求几乎不是这里的瓶颈,文件大小最终是瓶颈。最好尽可能多地分割内容的原因是,如果您想更改站点的某种感觉,比如说,所有标题的字体,那么您只需要更改一个文件/设置,并希望该文件尽可能小
对于大型且兼容的CSS,我会为所有不同的东西制作不同的CSS文档,如布局、类的处理等,另一个优点是,如果有多个页面需要与主页稍有不同的外观,它们只需链接到另一个CSS文件,而不必链接到完全不同的CSS文件,他们中的大多数人共享文件。多个文件对组织有好处,但向服务器发出一个请求肯定是最好的。如果你观看谷歌的性能视频,他们会建议尽可能少的HTTP请求。每个HTTP请求在握手中都有开销,如果您希望您的站点速度更快,则不希望产生这种开销 查看这个很棒的脚本,它将把您的多个CSS/JS文件转换为一个文件:
对于页面的最快下载和呈现,Yahoo性能规则是正确的。您需要尽可能少的http请求
然而,在许多网站上,拥有一个大型CSS文件并不方便。最好的办法是将CSS组织成任意多的文件,然后使用服务器端脚本连接这些文件。GZIP'ing这个文件也很有用。您应该使用多个css文件,而不是使用一个大文件。它可以帮助您在维护站点的同时,在不同的css中使用不同的定义(classe或id名称),否则将采用稍后声明的定义 但出于性能原因,您可以使用一个大文件,因为, 一个大的CSS文件可以减少HTTP请求,从而提高性能
几个较小的文件可以更容易地组织,这将使开发和维护更便宜、更容易。不要使用太多不同的css文件,或者至少尝试将它们放在其他域中,以加快通过浏览器下载它们的速度。我还建议您使用。拥有一个CSS文件不仅有助于处理HTTP请求,还可以提供更好的压缩效果(压缩一个大文件应该比压缩多个小文件效果更好)。如果性能对您很重要 然后 如果你的站点很小,但是流量很大,那么就选择一个css文件 若网站是小型个人或商业网站,但流量较少,那个么就转到多个css
如果CSS文件的可维护性对您很重要 然后 如果你的站点很小,不同的页面较少,那么就选择一个css文件 如果站点很大,那么就选择多个css
CSS文件的HTTP请求不会对小型站点的性能产生太大影响。我的策略很简单。 我在CSS文件和JS文件中将生产与开发分开。 在开发中,我可以有多达20个JS文件和10个CSS文件,组织非常灵活和简单,我总是知道所有东西都在哪里 在生产过程中,所有文件都被缩小为1js和1css文件,在开发过程中总是会进行更改,然后“分阶段”进入生产过程,因此我获得了应用程序的可维护性和生产过程中的性能 我使用Yahoo minifier缩小我的文件,但你可以使用任何方便的工具。权衡一下 一个CSS文件的优点
- 减少延迟。每个可下载组件都有少量延迟。更少的文件=>更少的延迟
- 单点压缩
- 更改一个文件不需要重新下载所有css。其他css可以从缓存中提供
- 结构
- 只下载你需要的。例如,如果页面上没有任何表单,则不需要下载forms.css