У меня есть немного CSS в ClientBundle, который использует фоновый URL. Поскольку я загружаю javascript (/MyModule/MyModule.nocache.js
) из /index.html
, мои относительные URL-адреса в CSS являются корневыми. Это значит
.myBackground { background: url("images/background.png"); }
попытается загрузить с /images/background.png
. Это выглядит как идеальный случай для замены css во время выполнения . Я добавил следующую строку в начало моего CSS-файла:
@eval moduleName com.google.gwt.core.client.GWT.getModuleName();
Как теперь объединить переменную moduleName
со строкой "images/background.png"
?
Я ищу что-то вроде:
@eval moduleName com.google.gwt.core.client.GWT.getModuleName();
.myBackground { background: url(moduleName + "images/background.png"); }
К сожалению, этот подход вызывает некоторые ошибки в выводе во время компиляции:
Line 46 column 30: encountered " ". Was expecting one of: <NUMBER> <PERCENTAGE>
<PT> <MM> <CM> <PC> <IN> <PX> <EMS> <EXS> <DEG> <RAD> <GRAD> <MS> <SECOND> <HZ>
<KHZ> <DIMEN> <FUNCTION>
Примечание : я знаю, что есть CSS-спрайты, и я использую его в некоторых местах, но я не могу заставить их работать правильно в этом случае из-за дополнительной информации GWT о стиле спрайта CSS конфликтует с дополнительным стилем, который мне нужен.