2

我想从静态无 cookie 域提供我的 css 和图像。现在我的问题是如何从我的 css 文件中指向图像。

我不想在 css 文件中对我的域进行硬编程,例如:

http://static.com/image.png

我宁愿有一个指向图像的变量,所以它适用于我使用的每个静态域。

实现这一目标的最佳方法是什么。我是否应该通过 php 运行整个 css 文件并将静态域添加到所有 png 引用的前面。这样做的一个缺点是我必须将整个 css 放在 html 中。

或者是否有另一种更优化的方式来做到这一点。

4

2 回答 2

6

只要图像来自样式表中的同一服务器,使用相对 URI 就足够了。

来自CSS 规范

为了创建不依赖于资源绝对位置的模块化样式表,作者可以使用相对 URI。相对 URI(如 [RFC3986] 中定义)使用基本 URI 解析为完整 URI。RFC 3986 第 5 节定义了此过程的规范算法。对于 CSS 样式表,基本 URI 是样式表的,而不是源文档的。

Bert Bos(CSS 规范的作者之一)有一篇关于样式表中变量的有趣文章。你可以在这里阅读。

于 2010-03-21T19:30:56.560 回答
2

当您从静态域中提取 css 时,CSS 中的相对 URL 将指向同一个域。因此,您可以只使用相对路径并提供来自该域的 css 和图像。

于 2010-03-21T19:19:50.833 回答