私は Symfony2 を初めて使用し、最初の php アプリケーションを作成しようとしています。
.css ファイルに背景画像を設定するまで、すべて正常に機能していました。何らかの理由で、.css ファイルに対するすべての変更 (背景色、フォントなど) が、画像を受け入れる new.html.twig ファイルに反映されます。
私は、あるべきようにすべてを行ったが、おそらく間違った順序で行ったという印象を受けています (以下は新しいバンドルで行われています):
Resources/public/css で作成された style.css ファイル (これは次のようになります):
.test{ font-size: 25px; background-color: yellow; } .topstyles { width: 135px; height: 113px; background-color: blue; } .topstyleg { background-image: url(images/ice.png); } .col2{ position: absolute; left: 300px; top: 100px; } .form-control { margin-bottom: 3px; }
Resources/public/images の下のバンドル フォルダーに画像を配置しました
new.html.twig に .css ファイルへのリンクを追加しました
{% block stylesheets %} {% stylesheets '@TestTestBundle/Resources/public/css/*' filter='cssrewrite' %} <link rel="stylesheet" href="{{ asset_url }}" type="text/css"/> {% endstylesheets %} {% endblock %}
php app/console assets:install web --symlink を実行しました。私のシステムはシンボリックリンクをサポートしていないため、.css と画像を含む web/bundles フォルダー内のバンドル Resources フォルダーのファイルを複製しただけです。
bundle/Resources フォルダーのいずれかのフォルダーにあるファイルに変更を加えるたびに、assets:install を再実行していたため、すべての変更が web/bundles/testtestbundle に反映されていました。
php app/console assetic:dump を使用してダンプします。これにより、root/web ディレクトリに個別の css フォルダーが作成され、.css ファイルは次のようになります。
.test{ font-size: 25px; background-color: yellow; } .topstyles { width: 135px; height: 113px; background-color: blue; } .topstyleg { background-image: url(../../Resources/public/css/images/ice.png); } .col2{ position: absolute; left: 300px; top: 100px; } .form-control { margin-bottom: 3px; }
php app/console cache:clear --env=prod --no-debug でキャッシュをクリアします
そして、何らかの理由ですべての変更が反映され、受け入れ画像が表示されます。
私がすでに試したリソースは次のとおりです。
- http://www.craftitonline.com/2011/06/symfony2-beautify-with-assetic-and-a-template-part-ii/
- Symfony2 - Assetic - CSS で画像を読み込む
- symfony2 - assetic assetic:dump コマンドがスタイルシートを正しく作成しない
他のリソースと同様ですが、何をしてもうまくいかないようです。
必要なバンドルの一部をインストールしていない可能性がありますが、 - どれかわかりません - 何かが不足している場合は、.css ファイルからアップロードされたフォーマットがないと思います。残りは問題なくロードされています。
私はこれを理解しようとしてかなりの時間を費やしてきたので、どんな支援も高く評価されます.