【问题标题】:php tool for generating css shorthand用于生成css简写的php工具
【发布时间】:2011-06-01 00:16:02
【问题描述】:

我正在使用 PHP 生成动态 CSS。我的个人价值观如下:

$padding_top  = 10;
$padding_bottom = 10;
$padding_left  = 10;
$padding_right  = 10;

现在,我想为所有可以使用简写符号的 CSS 规则生成 CSS 简写。所以上面的例子应该变成:

padding: 10px;

我确定肯定已经有一个库,但我找不到它,在我开始写一堆毛茸茸的条件语句之前,我想我先在这里试一试.. 任何关于如何最优雅地实现这一点的建议?

【问题讨论】:

    标签: php css shorthand


    【解决方案1】:

    更新根据 cmets,

    也许值得看看 CSSTidy 并在此基础上构建一些东西

    CSSTidy 是一个开源的 CSS 解析器 和优化器。它可以作为 可执行文件(可用于 Windows、Linux 和 OSX) 按命令行和 PHP 控制 脚本(两者几乎相同 功能)。与大多数相反 其他 CSS 解析器,没有常规 使用了表达式,因此 CSSTidy 具有完整的 CSS2 支持和更高的 可靠性。


    你试过LESSPHP

    不确定它会完全满足您的要求,但您应该能够构建自己的 mixin 以适应

    【讨论】:

    • 我查看了 LESSPHP,但没有发现它可以满足我在此处寻找的功能,而且我正在寻找仅能进行速记转换的轻量级工具。我正在使用 MacRabbit 的 CSSEdit 进行手动 CSS 编码,并注意到它如何智能地构造转换为简写,只要在属性编辑器中输入的值允许更短的表示形式。我希望找到一个 PHP 库能够做这样的事情..
    • 啊,我确实这么想并看了看,但也没有找到任何东西。我不认为会有这样的事情。速记代码很棒,但因为它能够覆盖以前的速记声明,尤其是像背景这样的东西,所以它并不总是可取的。自动转换为速记的工具可能会无意中更改页面。它需要了解级联和您的意图 - 所以最好自己编写。您可以使用 if/else 逻辑来比较值并根据需要输出 1、2、3 或 4 个值(如“填充/边框”类型规则中)?
    • @mikkelbreum 可能会基于 CSSTidy 构建一些东西
    • @clairesuzy 你想发布你的 CSSTidy 链接作为答案吗.. 那么我会接受它,这是一个我不知道的有趣选项,并且还没有更好的答案。
    • @clairesuzy 实际上更多地使用 CSSTidy 显示出非常有希望的结果,它完美地转换为速记,智能且具有安全选项。它修复了错误的语法,并进行了大小优化。很好。它可以作为 PHP 类使用。太完美了,谢谢。
    猜你喜欢
    • 1970-01-01
    • 2018-02-06
    • 2012-06-06
    • 1970-01-01
    • 1970-01-01
    • 2018-10-13
    • 1970-01-01
    • 2010-12-31
    • 2015-04-03
    相关资源
    最近更新 更多