【问题标题】:Having trouble compiling older Bootstrap LESS files编译较旧的 Bootstrap LESS 文件时遇到问题
【发布时间】:2013-12-07 16:00:33
【问题描述】:

在过去的几年中,我使用 Bootstrap 构建了许多网站。我现在使用 lessphp 进行服务器端编译,但旧站点是在 CodeKit 或 Simpless 中本地编译的。

我遇到的问题是,当那些旧站点需要更新时,本地编译器已经更新为使用最新版本的 Bootstrap 少文件,它们不会编译旧的东西。所以我通常最终只是创建一个 css 文件作为创可贴并在其中进行更新,这真的很不理想。

有时我决定在那些旧网站上设置服务器端编译,但它从来没有神奇地立即起作用,而且我至少需要一个小时才能查明问题所在。

其他人如何处理这个问题?我很后悔曾经使用本地编译器。

【问题讨论】:

    标签: twitter-bootstrap compiler-construction less


    【解决方案1】:

    在您需要更新的站点的一个页面上,制作一个静态页面 .html 页面并使用旧版本的 Less.js (https://github.com/less/less.js/releases)。在 head 指向 less.js 的上方,指向 .less 导入文件的 CSS 链接。然后进行更新。在 FireFox 开发人员工具中查看 CSS 魔术棒 CSS 菜单下的“查看 CSS”。您将看到“嵌入”css,这是一个完美的 css 文件,您可以将其复制出来并另存为 .css。将其粘贴在 @ 987654322@ 选择“CSS”文件类型并压缩。复制你的原始css,将它粘贴在一个临时文件夹中,放入同名的.css文件替换它。

    【讨论】:

    • 如果站点是 DB 驱动的,静默/注释掉当前指向 css 的链接,链接到 less.js 并在 head 中导入文件,在 less 文件中进行更新,然后交换它出去。如果您使用 Fetch 和 BBEdit,您可以在线编辑并单击刷新来执行此操作。其他应用可能会做同样的事情。
    • 是的。我也不能编译旧版本,他们之前允许在 mixins 中使用 javascript,现在都给出错误。还有一些像less.app、crunch和recess这样的东西没有升级到1.5,所以我用CodeKit来做更新的东西。
    【解决方案2】:

    我在编译 Twitter 的 Bootstrap 2.3.1 时没有发现任何问题。使用与 LESS 捆绑的命令行编译器(lessc 1.5.0 (LESS Compiler) [JavaScript])。

    本地编译器已更新为使用最新版本的 引导较少的文件,它们不会编译旧的东西。

    你能解释一下吗?我不明白。 例如,要编译 Bootstrap 2.3.1,您将需要该版本的 LESS 文件(请参阅:https://github.com/twbs/bootstrap/releases),但似乎没有理由不能使用更新的编译器。

    lessphp 也应该能够编译旧版本的 Bootstrap。目前编译版本> 3.0.0会有一些问题,见:https://github.com/leafo/lessphp/issues/503

    【讨论】:

    • 我的意思是我不能再在本地编译我的任何旧站点少文件了,我得到了错误,而他们过去编译得很好。一旦我完成一个站点,唯一改变的就是 codekit/simple 得到更新。当这种情况发生时,如果我将所有内容更新到最新版本的引导程序,它会再次正常编译。我不知道,也许我是做错事的人?无论如何,我会考虑尝试命令行编译器。
    • 感谢您的解释,您能否举例说明您遇到的错误?我仍然不能 100% 确定你在哪里更新 bootstrap。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-01-28
    • 1970-01-01
    • 2016-12-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多