【问题标题】:Using Less css framework in production在生产中使用 Less css 框架
【发布时间】:2015-01-30 22:37:14
【问题描述】:

几周前,我开始了解 LESS CSS。这正是我在编写 css 代码时认为应该可用的。

现在我非常渴望使用它并希望将其应用到生产场景中,但是有一个问题。要使用 LESS CSS,您有两种选择:
1. 在您的网页中包含 less.js
2.预编译LESS文件然后使用。

第一个选项我买不起,因为为此我需要使用大小不超过 43 KB 的 less.js。当我已经在使用 Jquery 时,这会增加额外的负载。

第二个选项看起来很有希望,但问题是,要在生产环境中编写代码,您不能每次都编译 LESS 以针对更改进行测试。这应该是我直接编写 CSS 代码时的体验。我应该写 LESS,它应该立即反映在页面上。

那么任何人都可以帮助我设置这种工作流程吗?

感谢任何其他类似框架的建议。

【问题讨论】:

  • 我通常是半途而废——在开发中使用 JS 文件,然后在构建用于生产之前进行预编译。您使用的是什么开发堆栈?
  • 编译成css,正如答案所说:)

标签: java css less build-process css-frameworks


【解决方案1】:

我在开发中使用Less-PHP:每次我在修改主.less文件后刷新浏览器进行测试,都会输出.css文件。

然后在生产中我只需要像往常一样复制.css文件。

我永远不会在生产环境中使用 Less.js,因为它只适用于已激活 JS 的用户,在不必要时会减慢每个用户的下载时间和渲染时间。

编辑:还有一些软件会等待您的 LESS 文件被修改和保存,并在发生时编译它。同样,Less PHP 可以在每个项目中设置一次并且会这样做,如果可以避免的话,我不希望每天在我的系统上启动一个守护进程。我已经有防火墙、AV、MSN、Dropbox、jabber 客户端、copypaste 实用程序、集成 SVN 等正在运行:)
2015 年编辑:我使用 Prepros 4 已经有一段时间了,或者会改用一些基于 grunt 的编译器。我的同事对 Prepros 5 有一些错误,所以我还没有安装它(Prepros 5 现在是一个专有软件,花费几美元。一个非常好的投资 imo)

EDIT2:看来您使用的是 Java。一点谷歌搜索给出了这个解决方案:http://www.asual.com/blog/lesscss/2009/11/05/less-for-java.html

【讨论】:

  • @AndrewMarshall 谢谢,我是在发帖后才看到的。答案已编辑
【解决方案2】:

正如您所说,在生产中使用 less.js 是一个坏主意。如果您使用 Git,只需添加另一个想法,您可以生成生产 CSS 文件作为 pre-commit 钩子的一部分,这样您就不必为生产手动执行任何操作。我已经写了一些关于我在这里使用的工作流程 - http://tjvantoll.com/2012/07/07/the-ideal-less-workflow-with-git/

【讨论】:

  • 是的,你为什么不在提交期间编译更少的文件
  • @dusual 在 pre-commit 钩子中编译文件可确保 css 文件包含在提交中。
【解决方案3】:

我也使用 Java,但以下内容几乎适用于任何技术:

开发模式

  1. 包含less文件,但不包含生成的css文件
  2. 少跑js

生产

  1. 使用ant清理生成的css文件夹
  2. 使用less rhino 编译来自less using ant 的css 文件
  3. 包含生成的 css 文件,但不包含 less 文件

我做了一些额外的事情,比如可以使用任何构建工具(ant、maven、...)轻松实现的主题/皮肤。 我还让我的系统忽略生成文件夹的版本控制,因为它将被构建过程删除和生成。

【讨论】:

    猜你喜欢
    • 2011-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-25
    • 1970-01-01
    • 1970-01-01
    • 2012-05-12
    相关资源
    最近更新 更多