私はフロントエンド開発者で、最近、CSS 開発に SASS または LESS を使用することを検討しています。
しかし、私は Ruby を使用しておらず、JavaScript をアクティブにしているユーザーに依存したくありません。PHP プロジェクトを使用して SASS または LESS を使用するためのヒントはありますか?
ここからlessphp の最新バージョンをダウンロードしてください。
これが私がそれを試した方法の例です:
<?php
require 'lessc.inc.php';
$less = new lessc('test.less');
file_put_contents('test.less.css', $less->parse());
?>
<html>
<head>
<title>Less CSS</title>
<link rel="stylesheet" href="test.less.css" type="text/css" />
</head>
<body>
<h1>This isn't supposed to be black!</h1>
</body>
</html>
そして私のtest.lessファイル:
@color : #33ddff;
.colorful(@textcolor : red){
color : @textcolor;
}
h1{
.colorful(@color);
}
それは私のために働きます、そしてそれはphpです!
私が書いた2つのオプションがあります:
どちらも十分に文書化されています。それらを試してみて、問題があれば教えてください。
ルビーをインストールします。SASSをインストールします。SASS を使用します。
静的ファイルを出力するため、ビルド/公開プロセスの一部として他の CSS と同様にアップロードするだけです。
WordPress を使用している場合は、必ずWP LESSをチェックしてください。.less
ファイルをwp_register_style
orwp_enqueue_style
または で指定するだけでadd_editor_style
、LESS コードが CSS コードにコンパイルされます。また、結果の CSS をキャッシュするため、ページの読み込みごとに LESS をコンパイルするオーバーヘッドがありません。
私の仕事の一環として、私はphpでsassを使用しています。
これは私が使用しているものなので、 PhamlPを試すことができます。PhamlP
はHaml
とSass
へのポートですPHP
。
ページがロードされるたびに sass パーサーを実行するか、css
生成されたものをキャッシュすることができます。
これは、尋ねられている同じ質問の質問です。より多くのオプションを表示したい場合
そのために PhpLessDemandBridge を使用できます: https://github.com/andyhausmann/PhpLessDemandBridge
次のように、テンプレートで簡単に使用できます。
<link rel="stylesheet" type="text/css" media="all" href="css/engine/css.php?file=bootstrap.less" />
エンジンは構成ファイルを介して構成できます。ここでは、パスを定義してファイルとキャッシュ ファイルを減らします。
"css.php?file=bootstrap.less" を定義することにより、エンジンをブートストラップ ファイルに向けることができます。これにより、Twitter Bootstrap などの他の少ないファイルがインポートされます。
私はこれを Magento、TYPO3 CMS などに使用しています。
最初の行では、Twitter Bootstrap の必要な部分を含めています。その後、独自のテーマとオーバーライドを含めています。
このチュートリアルを見てみましょう: http://net.tutsplus.com/tutorials/php/how-to-squeeze-the-most-out-of-less/
(「less php」をグーグルで検索した場合の 4 番目のエントリ)
私はいくつかのプロジェクトでhttp://leafo.net/scssphp/を持っています。それは私にとってはうまくいきます、これが私がしていることです。
scssphp を lib/scssphp/ にインストールします
.htaccess で
#Sass Parser: anything /css/FILENAME.css -> FILENAME.scss
RewriteRule ^css/(.*).css?$ style.php/$1.scss [NC,L]
ルート フォルダーには、style.php があります。
<?php
require "lib/scssphp/scss.inc.php";
$scss = new scssc();
$scss->setFormatter("scss_formatter");
$server = new scss_server("ui", null, $scss);
$server->serve();
?>
私の HTML では、次を使用します。
<link rel="stylesheet" href="/css/style.css">
/ui には、実際の SCSS コードのファイルがあります: /ui/style.scss
そして、すべてが機能します。SCSSPHP は、ファイルを再コンパイルする必要があるかどうかをチェックし、それを透過的に実行します。そうでない場合は、キャッシュされたバージョンを送信します。