2011-07-22 1 views
4

Chirpyを使用して、さまざまなサブディレクトリのすべてのCSSファイルを1つのファイルにマッシュアップしようとしています。Chirpy via Mash CssファイルにYUI Compressionを使用すると、どのようにして相対URLを取得できますか?

これは、すべてのCSSを含む単一の縮小されたファイルを取得する程度まで機能します。

私が抱えている問題は、参照されるCSSファイルに画像への相対パスが含まれているため、結果ファイルに無効な画像参照を含むCSSが含まれていることです。例えば

:これらのファイルの

<!-- Jquery --> 
<File Path="ThirdParty\Jquery\jquery-ui-1.8.custom.css" /> 
<File Path="ThirdParty\Jquery\Plugins\colorbox\colorbox.css" /> 

<!-- Ext --> 
<File Path="ThirdParty\Ext_3.2.1\ux\LockingGridView.css" /> 
<File Path="ThirdParty\Ext_3.2.1\plugins\Schedule_1.7\css\sch-all.css" /> 

それぞれの線に沿ってエントリが含まれています。このエントリは、中央に "マッシュ" を取得

.ui-widget-header { url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) } 

別の場所にあるファイルは、もはや有効ではありません。

すべてのCSSファイルのすべてのURLを更新する以外の方法はありますか?

(私はchirpyによるYUI圧縮ツールがこれを行うことができるのだろうかと思います)。

サイトコードが同じWebサーバー上のサブディレクトリで再利用されるため、絶対URLを避けたいと思います。

+0

すべての画像は1つのフォルダに配置する必要があり、誰もそれらを参照する必要があります。それらを複製することは良い考えではありません。サイトルートや一般的なパスから参照できるようになると、自動的に問題が解決されます。 – Mrchief

+0

こんにちはMr。チーフ、あなたの返答に感謝しますが、私はあなたがその質問を誤解していると思います。画像は複製されません。私は単にJqueryなどの第三者のさまざまなCSSファイルを関連付けられた画像とともに持っています。パフォーマンスを向上させるために、CSSファイルを1つのファイルに結合しようとしています。 – Leather

+0

その場合、Chirpy(または他の人)の知性に頼るのではなく、URLパスを絶対パスに変更する手間のかかる手動作業を行うのが最も安全な方法でしょう。例えば。 '/ images/ui ... png'、'/images/thirdParty/img ... png'となります。 – Mrchief

答えて

0

Scout Appと組み合わせたSass/SCSSに切り替えることをお勧めします。そうすれば、メインのヘルパーシート(mixinやテーマなど)を@includeして、コンパイルして単一のcssファイルにすることができます。

すべてのcssファイルはscssとしてシームレスに動作するため、頭痛はありません。

このアップグレード後、私のコーディング(および人生)が大幅に改善されました。

関連する問題