Pregunta

CssRegistration hace un gran trabajo al hacer referencia al archivo CSS en relación con la URL del sitio en el que se encuentra.

A qué te dedicas adentro el archivo CSS?Si estoy implementando recursos en el directorio /_layouts/images, seguro que /_layouts/images funciona muy bien en la MAYORÍA de los sitios.Sin embargo, existen /sites/ ocasionales como web raíz, en cuyo caso la referencia debe ser /sites/_layouts/images.

¿Existe una forma correcta de hacer esto?

¿Fue útil?

Solución

URL en los archivos CSS siempre son relativos al propio archivo CSS.Si tiene activos a referencia que se encuentran en la misma ubicación (o cierre) (por ejemplo, en la biblioteca de estilo o similar), simplemente puede usar rutas en relación con el archivo CSS.

Si está haciendo referencia a los activos desde dentro de _layouts o _layouts / imágenes, eso es tan fácil.Estos se configuran como carpetas virtuales que están disponibles en cualquier sitio (ya que está apuntando al sistema de archivos, no la base de datos de contenido).Así que todos estos caminos son los mismos:

http://localhost/_layouts/images/logo.png
http://localhost/sites/abc/_layouts/images/logo.png
http://localhost/sites/abc/subsite1/subsite2/_layouts/images/logo.png

En su archivo CSS, la ruta es simplemente: _layouts / images / logo.png

Otros consejos

DE ACUERDO.Entonces, si tienes una estructura de directorios como esta:

Folder1/  
Folder1/images/image1.png
Folder1/css/style.css

(Esto puede estar dentro de cualquier carpeta, por ejemplo:_layouts, _layouts/1033/Styles, etc.)

Para hacer referencia a image1.png desde style.css, todo lo que tienes que hacer en style.css es:

'../images/image1.png'

El "../" al inicio buscará el directorio de imágenes un nivel arriba de la ubicación donde está presente la hoja de estilo CSS.Por lo que no es necesario considerar la /sites/ El problema aquí es que la ruta relativa siempre se determinará a partir de la ubicación del archivo style.css.

Licenciado bajo: CC-BY-SA con atribución
scroll top