使CSS url()相对于文档

Enk*_*kay 5 css url

对于CSS,以下规则适用:

Partial URLs are interpreted relative to the source of the style sheet,
not relative to the document.
Run Code Online (Sandbox Code Playgroud)

但这是我的问题:

我有不同的网站使用相同的CSS文件.虽然它们使用相同的布局,但CSS引用的实际图像对于它们中的每一个都是不同的.

例:

#header {
width: 960px;
height: 200px;
background: url(/images/header.png);
}
Run Code Online (Sandbox Code Playgroud)

每个域都有自己的"images"文件夹和自己的"header.png",我希望CSS能够引用它.目前它的行为应该如此,并试图在托管CSS的域上找到png文件.我想要的是它从调用CSS文件的域中获取png文件.

我对样式表使用"link",因为"@import"会破坏IE中的渐进式渲染.

有任何建议或解决方法吗?

bob*_*nce 3

我想要的是它从调用 CSS 文件的域获取 png 文件。

您必须为每个引用的域提供单独的 URL。因此www.example1.com将其样式表引用为 as /style/sheet.css,从而从http://www.example1.com/style/sheet.csswhile www.example2.comgets it from中获取它http://www.example2.com/style/sheet.css

然而,仅仅因为它们看起来与客户端不同,并不意味着它们在服务器端必须是不同的文件(以及暗示的所有维护)。您只需将Alias每个域上的 指向真实的共享 CSS 文件即可。

我能想到的唯一其他解决方法是拆分 URL 引用规则,background-image并将它们放入特定于域的样式表或内部样式表中。