Pergunta

Eu hava um URL absoluto na minha folha de estilo. http: //localhost/images/myimage.jpg .

Eu também tenho uma classe de configuração com o seguinte constante

const SITE_ROOT = 'http://localhost/images'

Nas páginas php eu escrevo config::SITE_ROOT . "/myimage.jpg" Então, quando eu mover o site para o servidor de produção i pode mudar a raiz do site em um local central.

Existe alguma maneira de fazer isso na minha folha de estilo sem colocá-lo na página? de URL relativo não são uma opção, porque eu estou usando reescreve modernos e de URL relativos não fazer o trabalho.

Foi útil?

Solução

Você pode escrever sua constante SITE_ROOT nos arquivos CSS analisando-as com PHP. Adicione isto a .htaccess:

AddHandler application/x-httpd-php .css

Em seguida, incorporar PHP nos arquivos CSS como você faria em qualquer arquivo .php.

Outras dicas

Não há nenhuma maneira de fazer isso com CSS. Se você quer fazer algo como isso, você pode torná-lo um arquivo PHP e variáveis ??de uso dessa forma.

Mas você não poderia simplesmente usar URLs absolutos?

background-image: url(/images/myimage.jpg);

Irá funcionar em qualquer servidor, não é relativo, e irá encontrar os arquivos a partir da raiz.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top