Как указать пути к изображениям в файлах CSS?

#css #yii

#css #yii

Вопрос:

Я использую Yii Framework, и у меня есть CSS-файл, который использует некоторые изображения для фона и тому подобное.

Другой PHP-код может использовать Yii::app()-> request->baseUrl для указания правильного пути к ресурсам. Однако файл css не является PHP, поэтому я не могу использовать код.

Я пробовал использовать относительные пути, но к одному и тому же файлу css обращаются HTML-страницы разной глубины, например:

 http://mysite/controller/action1/10
http://mysite/controller
  

таким образом, относительные пути не работают (по крайней мере, не во всех браузерах).

Есть ли какой-нибудь Yii-способ сделать это, или я должен просто использовать абсолютные пути и покончить с этим?

Ответ №1:

Пути к изображениям в файлах CSS всегда относятся к файлу CSS, а не к странице, ссылающейся на файл CSS.

Поэтому не должно иметь значения, что вы используете файл CSS на HTML-страницах с разной глубиной пути, поскольку он всегда выглядит из местоположения CSS.

Например, если ваш файл CSS находится в /Content/Css и ваши изображения находятся в /Content/Images , то вы всегда должны ссылаться на свои изображения как url(../Images/something.png) .

Ответ №2:

Вы можете попробовать использовать полурелятивные пути, которые начинаются с «/». Например «/images/image1.jpg «.

Они всегда относятся к корню веб-сайта.

С уважением

Комментарии:

1. Проблема: Если веб-сайт не находится на корневом уровне, это тоже не сработает.