2

我在 Firefox 中工作,相对路径不起作用。

需要注意的是,我使用 AJAX 流式传输我的 .css 文件并将其动态添加到 DOM。

另一个需要注意的是,我的网站是通过以下两种方式之一进入的:

www.host.com (use this for production)

或者

www.host.com/dev/ (use this for dev)

图片在这里:

www.host.com/host/images 

或者

www.host.com/dev/host/images

取决于您如何进入该网站。

我可以发布任何需要的信息并测试解决方案。

我正在使用

../images/name.jpg

但浏览器不知何故将此用于:

hosts.com/images/name.jpg

这不存在。

这是一个关于相对路径和正确实施的问题。

4

4 回答 4

3

绝对路径 URL

之所以称为绝对路径,是因为它们指的是非常具体的位置,包括域名。Web 元素的绝对路径通常也称为 URL。例如,这个网页的绝对路径是:

在流式 CSS 中指定相对路径的正确方法是什么?

您通常使用域的绝对路径来指向与您自己的域不同的域中的 Web 元素。例如,如果我想链接到谷歌,那将是......

如果您指的是与您所在域相同的 Web 元素,则无需在链接路径中使用域名。只需省略域,但请确保在域名后包含第一个斜杠 (/)。

在大多数网站上使用不带域名的绝对路径是个好主意。这种格式可确保无论您将页面放在何处,链接或图像都可以使用。这似乎是使用较长链接的愚蠢理由,但如果您在站点上的多个页面和目录之间共享代码,使用绝对路径将加快您的维护速度。

相对路径 URL

相对路径会根据链接所在的页面而变化。使用相对路径创建链接有几个规则:

  • 与页面在同一目录中的链接没有列出路径信息的文件名
  • 列出的子目录没有任何前面的斜杠每周/文件名
  • 链接一个目录被列为 ../filename

如何确定相对路径:

  1. 确定您正在编辑的页面的位置。这篇文章位于我网站上的/library/weekly 文件夹中。
  2. 确定要链接到的页面或图像的位置。初学者资源中心位于:/library/beginning/
  3. 比较位置并决定如何指向它在本文中,我需要上一级目录(to/library),然后返回到开始目录
  4. 使用上面列出的规则编写链接:...
于 2012-06-09T16:58:44.037 回答
1

相对路径会根据链接所在的页面而变化。使用相对路径创建链接有几个规则:

于 2012-06-09T16:52:06.410 回答
0

我需要对此进行测试,但是对于动态插入的 CSS,所有路径都相对于根目录或 www.host.com ......这将解析为......这实际上是说所有路径实际上都是绝对的......这是我在 FireFox 中看到的行为。

于 2012-06-09T17:16:44.570 回答
0

相对路径总是相对于 CSS 位置,而不是引用 CSS 文件的网页位置。那么问题来了,CSS 文件的起始位置是什么?如果您使所有路径都相对于它,它应该适用于您的生产和开发 URL。

于 2012-06-09T16:46:31.520 回答