CSS预处理器:Sass,Less,Php&数据库中的值

时间:2012-08-13 13:33:43

标签: php sass less

我终于深入研究了CSS预处理,并试图找出最佳路径。我的主要问题是:

  1. 使用SASS或LESS超过Php的价值是多少?
  2. 如果我使用SASS或LESS,那么从数据库中整合值的最佳方法是什么?
  3. 显然使用php在标题中打印样式是一个非常糟糕的主意。我使用php创建样式表,并将其导入为'Content-Type:text / css'。然后,它将创建将作为这样的服务器并正确缓存的样式表。我可以使用数据库中的值并使用我已经熟悉的语言。

    SASS和LESS在创建/使用样式表方面比Php有什么优势,如果我使用它们,那么使用数据库中值的最佳方法是什么?我是否需要使用Php从数据库中获取值,基本上继续我的上述方法,仅用于该用途,然后使用SASS,LESS或其他方法来处理样式表的其余部分?

    非常感谢你的帮助!

2 个答案:

答案 0 :(得分:2)

像SASS和LESS这样的CSS预处理器为您提供的不仅仅是提供动态代码的PHP(或任何其他服务器端语言)文件,并提供content-type:text/css

他们给你:

  • Mixins - 类的类。
  • 参数化mixins - 可以传递参数的类,如函数。
  • 嵌套规则 - 类中的类,减少重复代码。
  • 操作 - CSS中的数学。
  • 色彩功能 - 编辑颜色。
  • 命名空间 - 可以通过引用调用的样式组。
  • 范围 - 对样式进行本地更改。
  • JavaScript评估 - 在CSS中评估的JavaScript表达式。

用PHP自己做所有这些都是一件很公平的努力!

关于从数据库中获取数据并在SASS / LESS中使用它,预处理器不允许您开箱即用。您可以编写自己的PHP代码,从数据库中读取,收集所需的信息和值,然后使用这些值将SASS或LESS文件写入文件系统。如果您不需要预处理器为您提供的上述功能,您也可以编写一个普通的CSS文件。

答案 1 :(得分:0)

作为使用php的人,并且已经使用Sass几个月了:

  1. 使用SASS或LESS超过Php的价值是什么?
  2. 在这些预处理器中,所有工作都已经完成。您可以使用自己编写的php实现相同的目标,但这会浪费时间。工作,测试和评估的几个月,甚至几年已经进入Sass和Less,这两个名字。为什么重复这项工作?

    许多IDE已经支持.scss文件的语法突出显示,例如,使代码更容易阅读和编写。

    您不需要服务器来运行Sass或更少,使它们非常便携。 Sass确实需要Ruby,但Less只需要javascript,即:它将在任何地方运行。

    使用像Sass这样的东西会让你以一种非常有条理的方式思考你的css,并鼓励一些好习惯。

    1. 如果我使用SASS或LESS,那么从数据库中整合值的最佳方法是什么?
    2. 我从来没有做过这样的事情,但这就是我如何接近它。 在数据库中有一个专门用于存储变量的表,只需要一个id,一个类名和一个存储为文本字符串的值,无论是测量值,十六进制颜色,还是你需要的任何值。

      无论何时向表中添加新定义,都要运行一个更新.scss文件的脚本(如果您使用的是Sass),调用类似于db_values.scss的内容只需写入列出大量变量的文本即可它们的值,以预处理器所需的语法。

      在你的主预处理器文件中,导入这个生成的文件,它不会给你臃肿的样式表,结果css只会使用它需要的变量。