【问题标题】:PHP Preprocessor script/library for Stylus?用于 Stylus 的 PHP 预处理器脚本/库?
【发布时间】:2012-04-24 20:26:32
【问题描述】:

是否有可用于 php 的 "css stylus" 解析器/库?

如果不是,请提出类似的建议,如果不是更好的话。可能是一个轻量级的库,让你的生活编码 css,在 php 中更容易。

Stylus 语法会去除常规 CSS 脚本中的所有冒号、分号、方括号和大多数括号。它的简洁和优雅让我想起了 Lisp。更令人惊奇的是,Stylus 还将在同一个文件中接受常规的 CSS 语法,从而减少多个贡献者之间可能存在的摩擦。

【问题讨论】:

  • 我特别喜欢LESS,但同样,这只是编写 CSS 的另一种方式,我不明白这些帮助程序如何适合“php 解析器”类别。你想把它们写在一个 php 文件中(让它动态呈现)吗?然后你不需要“解析”它,只需按照你想要的方式直接生成它(常规 CSS、精简 CSS 或其他)
  • 而不是复制“额外无用的描述”(顺便说一下,类似于垃圾邮件),您可以添加额外的有用信息,即您真正需要什么,您追求什么,做什么解析器需要做的(解析一个已经制作好的css手写笔?)等
  • 我清楚地说明了我真正需要什么,请仔细阅读问题然后回答。
  • @DamienPirsy 他想要一个可以解析 Stylus 代码并输出普通 CSS 的 PHP 脚本。正如另一个答案中所指出的,LESS 和 SASS/SCSS 有类似的工具。他只是在寻找使用 PHP 的 Stylus 预处理器工具。不知道你为什么会对此投反对票或投票关闭它。

标签: php css stylus


【解决方案1】:

我也在寻找Stylus parser for PHP。在没有找到之后,我创建了一个基本的并将其放在 GitHub 上供其他人使用/改进。

当前功能 2013 年 3 月 20 日:

  • 省略大括号
  • 省略冒号
  • 省略分号
  • 自定义函数
  • 导入其他文件
  • '&' 父引用
  • 混音
  • 插值
  • 变量

【讨论】:

    【解决方案2】:

    撞。似乎仍然没有一种易于使用的方法将手写笔合并到 php 中。这是我的解决方法(仅限 Linux,仅限本地开发)。它的灵感来自我最近的另一个question about FAM

    安装incron和stylus,在ubuntu下是这样的

    sudo apt-get install incron
    sudo npm install stylus -g
    

    访问 incron 监视表

    incrontab -e
    

    并添加以下适当的修改:

    /var/www/css/my.styl IN_MODIFY /usr/local/bin/stylus /var/www/css/my.styl
    

    这基本上意味着在文件更改时将 my.styl 重新编译为 my.css。

    将生成的 css 添加到 html 标头

    <link href="path/tom/my.css" rel="stylesheet" type="text/css" />
    

    每当您保存.styl 文件时,您的.css 都会在后台重新编译。跳过部署中的 styus 文件,使用重新编译的。

    【讨论】:

    • 只要文件是静态的就可以工作,现在说 css 是特定于版本的并且是通过 PHP 生成的内容我不太确定它是否会起作用。不过,感谢您的提示,值得/值得研究。
    • 为什么不只是stylus --watch path/to/stylus/file.styl? Stylus 内置了手表功能。
    【解决方案3】:

    没有。但是您可以考虑很多替代方案,例如LESSSassHSS。也许其中有一个 PHP 解析器。

    【讨论】:

    • Sass 是一个不错的选择,谢谢,但我想不如手写笔好,我认为我必须从头开始编写解析器,再次感谢
    【解决方案4】:

    为什么不直接使用原来的 Node.js 实现?

    exec 可以正常工作,但您应该只在开发环境中使用它。

    <?php exec('/path/to/stylus stylesheet.styl'); ?>
    

    为了性能和安全性,您应该在生产环境中预编译您的 Stylus。

    【讨论】:

      【解决方案5】:

      这不一定能回答您的问题,但我认为有些人可以从中找到真正的价值。 PHP 中有 SCSS (Sass) 和 Less 编译器的实现:

      https://github.com/oyejorge/scssphp

      https://github.com/oyejorge/less.php

      October CMS 中使用 Less.js 实现来编译资产,效果非常好,您不必预编译或观看。但是,它缺乏更好的错误记录。

      也许这些可以作为实现 Stylus PHP 编译器的基础?

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-11-19
        • 2023-03-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多