我只是在学习Sass并试图找出我的工作流程。问题是我的CSS文件(autoversioning,path-variables等)中有很多次PHP代码。有没有办法在SASS(SCSS文件)中跳过PHP代码。
编辑:我必须澄清有问题的CSS文件确实是动态的,所以我的example.css.php -file运行一些PHP并且以某种方式依赖于web服务器状态。 (静态CSS文件没有问题。)如果我创建简单的SCSS文件,我会收到PHP代码的错误。任何想法?...有人为Sass-parser做了任何修改以跳过sass中的脚本代码?
示例test.scss:
$backg: #fa0;
#wrapper {
color: #000;
background-color: $backg;
}
<?php echo ""; ?>
编辑:我脑子里发生了一次“黑客攻击”。我可以使用SASS / * * / comments来注释掉所有PHP代码行,然后使用一些脚本删除注释字符并显示PHP以获得正确的结果......
E.g。
// This is an example SCSS-snippet with commented PHP code lines in it...
.foo {
color: $someColor;
/* background: transparent url(<?php echo autoVer('../', 'img/badge.png'); ?>) no-repeat center top; */
答案 0 :(得分:1)
默认情况下,您的Web服务器不会处理像php这样的css / scss文件。 你可以在Nginx / Apache设置中配置它,但它实际上是黑色编码
答案 1 :(得分:1)
PHP通常在特定HTTP请求的上下文中扩展文件。 SCSS-&gt; CSS转换通常发生在静态文件上。您是否希望SCSS依赖于来自用户或Web会话的数据?如果是这样,你必须在运行PHP之后运行Sass以获取CSS,否则你最好的方法可能是添加一个Makefile规则来运行foo.scss.php通过PHP然后运行Sass。
我还应该指出,无论如何,使用PHP很容易用CSS完成你用CSS做的事情,所以转换完成后你可能不需要PHP。