css background-image [résolu mais bon...]
Salut à tous,
J'ai un soucis actuellement sur le rendu css des background-image. Je commence à prendre l'habitude de ne plus mettre de <img...> dans le html lorsque l'image à mettre fait partie du thème et non du contenu.
Mon problème vient du fait que je ne sais pas mettre autre chose qu'un chemin relatif dans le "url".
Exemple :
Ca marche donc très bien tant que le cache css n'est pas mis en place. Par contre, quand je mets le cache en place, ça déraille complétement. En effet, le fichier de cache généré se retrouve dans le répertoire plugins. Dans ce cas, le chemin d'accès à l'image devient ./monplugin/img/MonImage.png. Toutes mes images disparaissent donc.
J'ai l'impression que mon problème est relativement "classique", pourtant je n'ai pas trouvé de réponse sur Internet. Je ne dois pas utiliser les bons mots clés...
Est-ce que quelqu'un aurait une idée à me proposer ? Comment créer un chemin absolu ? Faut-il parser dynamiquement le fichier css pour modifier les chemins (moche, quand même) ?
Merci !
J'ai un soucis actuellement sur le rendu css des background-image. Je commence à prendre l'habitude de ne plus mettre de <img...> dans le html lorsque l'image à mettre fait partie du thème et non du contenu.
Mon problème vient du fait que je ne sais pas mettre autre chose qu'un chemin relatif dans le "url".
Exemple :
background-image: url(../img/MonImage.png)
Sachant que c'est un css d'un plugin et qu'il se trouve dans le répertoire css du plugin. On a l'arborescence suivante :
plugins
|- monplugin
|- css
|- img
Ca marche donc très bien tant que le cache css n'est pas mis en place. Par contre, quand je mets le cache en place, ça déraille complétement. En effet, le fichier de cache généré se retrouve dans le répertoire plugins. Dans ce cas, le chemin d'accès à l'image devient ./monplugin/img/MonImage.png. Toutes mes images disparaissent donc.
J'ai l'impression que mon problème est relativement "classique", pourtant je n'ai pas trouvé de réponse sur Internet. Je ne dois pas utiliser les bons mots clés...
Est-ce que quelqu'un aurait une idée à me proposer ? Comment créer un chemin absolu ? Faut-il parser dynamiquement le fichier css pour modifier les chemins (moche, quand même) ?
Merci !
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
à plus,
Gzyg
Mais bon, c'est pas encore ce que je cherchais... Bon, je dois être un peu trop maniaque...
Sinon pour développer, tu as bien comme base un PluXml avec déjà une feuille de style ? Soit celle par défaut, soit une perso. Pourquoi en rajouter une ? Au cas où certaines balises ne serait pas traitées par le css de PluXml, tu lui ajoutes une section plugin avec tes classes et basta.
à plus,
Gzyg
Ou alors tricher en faisant un fichier php qui se fait passer pour du css ou qui génère un fichier css. Ou en utilisant la méthode onActivate des plugins qui vérifierait où se trouve le plugin et qui chargerait tel ou tel fichier css.
La remarque de Gzyg m'a titillé d'autant plus que je suis d'accord sur le côté "on tente de charger deux images alors qu'il n'y en a qu'une".
J'ai donc résolu mon problème en modifiant mon plugin cssNoCache pour qu'il fabrique un fichier de... cache (!) et le mette au même endroit que le fichier de cache standard de pluXml. Autrement dit, les chemins d'accès seront consistants entre mon environnement de dev (où cssNoCache est installé) et mon environnement de prod (où le plugin n'est pas installé).