2009-10-02 74 views
1

编写简洁CSS代码的鼓声已经打了多年。例如:使用GZIP,我可以编写'Sloppy'CSS(和其他类型的代码)代码吗?

执行此操作: .foo,.bar { color:#f00; }

不是这样的: .foo { color:#f00; } .bar { color:#f00; }

与GZIP压缩是不是不相关我如何写上述CSS?由于GZIP将创建一个动态库,颜色为#f00作为单个实例,并使用指向其多个用途的指针。我想知道,因为重复样式定义与搜索相同的声明比较方便。

+0

不会正确写入CSS占用比gzipped不正确的css更少的空间吗?或者我错过了这一点? – EvilChookie 2009-10-02 22:31:19

+0

@EvilChookie:一个gzip的CSS通常会比一个类似的臃肿的CSS小。 – voyager 2009-10-02 22:33:35

+0

其中一个考虑因素是:您是否因为不必写得好而编写草率的代码?这种想法可能导致你进入一个垃圾代码的世界,这对你来说是一场噩梦,也是你的任何项目的继任者,以及糟糕的表现。我不认为你是因为你在问...这样的人不在乎,懒惰不管,我只是想说明一点,因为我的宠物小狗之一是Hello World,它需要将近20K,因为“每台机器至少有1GB内存,我不必写得好!“思考:) – Deverill 2009-10-03 23:35:29

回答

3

这取决于你试图实现什么:

  • 如果包含.foo和的.bar需要具有相同的颜色,you're使用第一种方法,因为它更容易维护的更好。
  • 如果您的第一条语句是您手动优化文件大小的结果,而且.foo和.bar具有相同的属性,那么我肯定会将其拆分并使用第二个解决方案。

最后gzip和/或一个css压缩器将处理文件大小,所以我不会担心这一点。

反而担心可维护性和可读性。

0

我想你仍然想继续使用第一种方法,因为它更具可读性。对每一件事情都有单独的章节会让你的CSS膨胀,很难让人们通过它。

+1

如果两个类别之间没有任何关联,或者个别定义可能会随着时间的推移而变化并分离出来,则不需要这样做。 – 2009-10-02 22:31:41

+0

@iftrue我假设他们是相关的,否则他们为什么会被分组在第一位。另外,我不会分开一些东西,因为它很可能在将来需要分离。如果未来决定分离,那就让它发生,不要试图预测你不知道的东西。 – Joseph 2009-10-03 02:12:33

5

您可以在发布之前使用css minifier并停止担心可读性和文件大小。

GZIP必将有一个更大的前/后“草率”的CSS文件,但有压缩前尽可能小的文件,大小影响总是大部分时间是好事TM,因为这将是稍微小一些。


记住:源代码是供人类阅读的,只是偶然地让机器运行。

+0

+1提醒。 – Kawa 2009-10-02 22:33:36

+0

好引用。我说我们让压缩机为我们做了讨厌的黑客攻击,让我们的产品代码随着压缩机的改进而缩小。 :) – 2009-10-02 22:38:00

2

如果有道理,就去做吧。否则,我会以合理的方式编写CSS,以便能够正确维护,然后依靠gzip + CSS压缩器(如YUI Compressor)来处理您的脏活。

相关问题