How to Properly Reference Images in CSS Files in Symfony 2?
Path of Assets in CSS Files in Symfony 2
This discussion focuses on finding a solution for referencing images in CSS files while maintaining the desired directory structure in Symfony 2. The goal is to address the issue of paths in CSS files and ensure that images are accessible without exposing original source files to the public.
Previous Solutions
Initial attempts involved hardcoding absolute paths in the CSS file, making the application incompatible with subdirectories. Assetic with filter="cssrewrite" was also used, but it resulted in incorrect path generation.
Current (Preferred) Solution
The preferred solution entails storing CSS files in the "Resources/assets/css" directory and images in the "Resources/public/images" directory. By relative referencing in the CSS file, such as "url("../images/myimage.png")", the correct path is generated at compilation time. This approach works flawlessly in both dev and production environments.
Discussion and Analysis
The author conducted extensive testing using various combinations of @notation, relative notation, CSS rewrite, image background versus src, and parsing with and without assetic. The results revealed that only specific options yielded the desired behavior.
Solution Explanation
The successful approach required:
- Storing images in the "public" directory.
- Building CSS from the "public" directory using assetic.
- Using direct
tags with src from the "public/images" directory.
Final Thoughts and Considerations
For added security, it is recommended to store original CSS files in the "assets" directory and have your deployment process copy them to the "public" directory before compilation. Alternatively, it remains possible to store originals in the "public" directory for --symlink usage during development, provided you script the removal of these files post-compilation.
The above is the detailed content of How to Properly Reference Images in CSS Files in Symfony 2?. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics











Have you ever needed a countdown timer on a project? For something like that, it might be natural to reach for a plugin, but it’s actually a lot more

Everything you ever wanted to know about data attributes in HTML, CSS, and JavaScript.

At the start of a new project, Sass compilation happens in the blink of an eye. This feels great, especially when it’s paired with Browsersync, which reloads

The inline-template directive allows us to build rich Vue components as a progressive enhancement over existing WordPress markup.

One thing that caught my eye on the list of features for Lea Verou's conic-gradient() polyfill was the last item:

Let’s attempt to coin a term here: "Static Form Provider." You bring your HTML

PHP templating often gets a bad rap for facilitating subpar code — but that doesn't have to be the case. Let’s look at how PHP projects can enforce a basic

Every time I start a new project, I organize the code I’m looking at into three types, or categories if you like. And I think these types can be applied to
