CssRegistration做了一个伟大的工作,引用CSS文件相对于你所在的网站URL。

你是做什么的 里面 CSS文件?如果我正在将资产部署到/_layouts/images目录,那么肯定/_layouts/images在大多数网站上效果很好。但是,偶尔会有/sites/作为rootweb,在这种情况下,引用需要是/sites/_layouts/images。

有没有好的方法来做到这一点?

有帮助吗?

解决方案

CSS文件中的URL始终相对于CSS文件本身。如果您有相同(或关闭)位置(例如,在样式库或类似)中的资产,则可以简单地使用相对于CSS文件的路径。

如果您是从_layouts或_layouts /图像中引用资产,那就是容易的。这些配置为可从任何站点获得的虚拟文件夹(因为它指向文件系统,而不是内容数据库)。所以所有这些路径都相同:

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

在CSS文件中,路径只是:_Layouts / Images / logo.png

其他提示

好的。所以如果你有这样的目录结构:

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

(这可以在任何文件夹中,例如:_layouts,_layouts/1033/样式等)

以参考图像1。png从样式。css,所有你必须做的风格。css是:

'../images/image1.png'

的"。./"在开始时,将从css样式表所在的位置向上一级查找images目录。所以没有必要考虑 /sites/ 问题在这里作为相对路径将始终从样式的位置确定。css文件。

许可以下: CC-BY-SA归因
scroll top