6

曾几何时,更高级的 Web 开发人员认为我应该避免管理多个 CSS 文件并坚持每个项目一个。在处理大量重叠的 CSS 规则时,它有助于提高页面加载速度并避免愚蠢的错误。

我的问题是 - 这种方法仍然有效吗?

现在,关于页面加载性能的争论似乎并不多,因为现在有了很棒的宽带互联网和聪明的网络浏览器,还有更强大的缓存功能。CSS 级联确实很容易出错,但是对于没有经验的开发人员并且拥有一个 CSS 样式表并不能真正使我们防弹。

我认为我更希望有一组由组件整齐分隔的默认样式表,然后通过 CSS 将它们连接到一个规则中@import。这也将允许我默认包含重置样式表。

有人和我在一起吗?

4

4 回答 4

6

这与带宽速度无关,而是关于 http 请求的数量,这对于移动连接很有意义。

但是,使用不同的 css 文件来保持项目模块化的方法是可靠的,因为它可以帮助您按照您想要的方式组织 css,而无需将所有代码仅放在一个文件中。然后,您可以利用 css 预处理器/压缩器将所有 css 文件连接并压缩到一个文件中以用于生产。

这篇文章http://www.igvita.com/2012/06/14/debunking-responsive-css-performance-myths/

有一段关于移动的文章很好地解释了为什么这是一个好的做法:

您最好一次性下载所有 CSS 内容,而不是最初的预热连接。通过这样做,您还将帮助用户延长电池寿命。如果要在这里进行一项优化,那么它很简单:连接和压缩。

于 2012-06-15T08:58:56.677 回答
1

是的,这种方法仍然有效。关于负载优化的文章有几十篇,但大致思路如下

更少的文件 = 更少的对服务器的 http 请求 = 更好的负载性能

随着时间的推移发生变化的主要事情是,现在有许多工具支持在运行时将多个文件合并为单个文件。因此,您有单独的样式表以更好地组织、在开发时进行调试,并且这些工具在生产时合并、缩小和设置正确的缓存标头。

于 2012-06-15T09:00:00.740 回答
0

我同意你的观点,我发现没有理由再只保留一个 css 表了,现在,我完全按照你所说的去做,按组件分离,以及延迟加载:)(php if 语句等)。

于 2012-06-15T08:58:48.907 回答
0

我将内容与评论分开。例如 div 转到 /* Divs start*/ div#somediv /* Divs end*/ /* Animations start*/ /* Animations end*/. 对我来说,这比完成项目后合并不同的 css 文件更容易

于 2018-11-22T19:32:53.593 回答