许多人都说要将外部CSS和JavaScript文件的数量保持在最低限度,以减少往返时间。例如,Google建议每个网站分别最多使用两个CSS和JavaScript文件。
问题是,我已经将CSS代码分解成几个文件,这取决于它作为“模块化”一部分的性质。例如,我将仅在应用程序的某个部分中使用的CSS代码放在单独的文件中。因此,一些文件的代码不到一百行。
我是Java开发者,这实际上是Java推荐的做法,但CSS是一个完全不同的生物,我对CSS知之甚少。这是我的问题。
保留尽可能多的CSS文件以保证可读性和可维护性是否有意义?
Web项目中可管理多少个CSS文件?
您过去曾使用的Web应用程序中的CSS文件平均数是多少?
答案 0 :(得分:3)
最好的解决方案是编写一个结合(并缩小)多个CSS或JS文件的脚本。
答案 1 :(得分:3)
您可能会受到像Bundler或Chirpy
这样的解决方案的好处http://www.codethinked.com/bundler-now-supports-css-and-less
我们使用chirpy是因为我们在Bundler中发现了一个错误,可以将查询字符串参数注入到css文件中。
作为文件整合的奖励,您还可以获得.less语法处理。
答案 2 :(得分:2)
我同意其他人在这里所说的,是的,当你开发你有多个CSS文件时,但是对于生产你应该合并一个缩小它们。
但是我不同意你应该将它们全部合并为一个单独的文件。因为这意味着只想访问您的主页的人必须等待页面x,y,z上的CSS也要下载。
我通常做的是有2或3个CSS文件。
你也可以使用像HEAD.JS这样的脚本来异步管理你的CSS和javascript
有一个常见的误解是单个组合脚本表现最佳。错误:
答案 3 :(得分:1)
正如您所指出的,拥有多个CSS文件通常会带来更好的可维护性和模块化。
所需的CSS文件数量取决于项目的大小和项目中的模块化程度。
提供CSS文件而非许多文件通常会在页面加载时间上产生显着差异,因此理想的解决方案是使用某种工具来组合甚至压缩CSS文件。这可以通过Minify等工具在运行时轻松完成。
答案 4 :(得分:1)
组合资源可能是有益的,因为它可以减少HTTP请求的数量;减少HTTP请求的数量肯定会降低开销并可以提高性能。它还可以带来缓存的好处,因为缓存中的对象可以更少。
也就是说,这种优化仅适用于指标。那里有个人资料工作者(Firebug有一个)可以显示你正在做多少请求以及他们需要多长时间。您可能(或可能不)发现有更多时间有效的方法来提高性能并减少服务器负载。