我使用composer安装了“autoPrefixer PHP”并尝试了github页面(https://github.com/vladkens/autoprefixer-php)中显示的示例。 非常简单的例子
$autoprefixer = new Autoprefixer();
$css = 'a { transition: transform 1s }';
$prefixed = $autoprefixer->compile($css);
只输出$ css不变。但是,如果我使用自定义参数初始化autprefixer对象,则会正确输出前缀css。
$autoprefixer = new Autoprefixer('last 2 versions');
还用示例中的参数初始化对象,给出“未知浏览器要求'ie8'”错误
$autoprefixer = new Autoprefixer(array('ff > 2', '> 2%', 'ie8')); // many rules
那么我的装置有什么问题?事实上,我没有手动做任何事情,只是由作曲家安装。
答案 0 :(得分:0)
“ie”和“8”之间需要一个空格,如示例所示:
$autoprefixer = new Autoprefixer(array('ff > 2', '> 2%', 'ie 8')); // many rules
答案 1 :(得分:0)
快速浏览vladkens Autoprefixer PHP编译方法的代码:
$nodejs = proc_open('node ' . __DIR__ . '/vendor/wrap.js',
array(array('pipe', 'r'), array('pipe', 'w')),
$pipes
);
好的,proc_open节点..,它使用Note.js并在vladkens自述文件介绍中写道:
该库提供与Node.js应用程序的PHP集成。
在自述安装部分,他也写了
首先,您需要在服务器中安装Node.js.
看起来目前还没有真正的PHP重建编译器,适用于没有自己的服务器的人,主机支持Note.js,Grunt / Gulp的经验,如Compass或没有mac CodeKit(不错的软件,以前找到它,但不能直接在linux上使用它。)
当我的PHP软件使用scss,sass,less或其他css PHP修改智能缓存时,添加autoprefixer也是一个好主意。
<强>结论强>
您需要在服务器上使用Node.js,并在PHP中执行proc_open()。