Servidor de referências Relativas DENTRO de CSS?
-
09-12-2019 - |
Pergunta
CssRegistration faz um grande trabalho de referenciar o arquivo CSS relativo para a URL do site que você está.
O que fazer dentro o arquivo CSS?Se eu estou a implantação de ativos para o /_layouts/images directory, certifique-se /_layouts/images funciona muito bem na MAIORIA dos sites.Há, no entanto, a ocasional /sites/ como um raiz_web, caso em que a referência precisa ser /sites/_layouts/images.
Há uma boa maneira de fazer isso?
Solução
URLs de arquivos CSS são sempre relativo para o arquivo CSS em si.Se você tiver recursos para a referência de que são o mesmo (ou quase), localização (por exemplo, no Estilo da Biblioteca ou similares), você pode simplesmente usar caminhos relativos para o arquivo CSS.
Se você estiver fazendo referência a ativos de dentro _layouts ou _layouts/images, que é tão fácil.Estes são configurados como pastas virtuais que estão disponíveis a partir de qualquer site (desde que apontando para o sistema de ficheiros, não o conteúdo do banco de dados).Então, todos esses caminhos são os mesmos:
http://localhost/_layouts/images/logo.png
http://localhost/sites/abc/_layouts/images/logo.png
http://localhost/sites/abc/subsite1/subsite2/_layouts/images/logo.png
No seu arquivo CSS, o caminho é simplesmente:_layouts/images/logo.png
Outras dicas
OK.Então, se você tiver uma estrutura de diretório como este:
Folder1/
Folder1/images/image1.png
Folder1/css/style.css
(Isso pode ser dentro de qualquer pasta, por exemplo:_layouts, _layouts/1033/Estilos etc)
Para referir-se a image1.png do estilo.css, tudo que você tem a fazer no estilo.css é:
'../images/image1.png'
O "../" no início irá olhar para o diretório de imagens de um nível acima do local onde a folha de estilos css está presente.Portanto, não há necessidade de se considerar a /sites/
problema aqui como o caminho relativo será sempre determinado a partir da localização do estilo.arquivo css.