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

What is the correct way to specify relative paths in streamed CSS?

本文关键字:方法 是什么 路径 相对 CSS      更新时间:2023-09-26

我在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

不存在。

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

绝对路径网址

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

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

通常,将绝对路径与域一起使用,以指向位于您自己的域以外的其他域中的 Web 元素。例如,如果我想链接到谷歌,那将是...

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

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

相对路径网址

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

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

如何确定相对路径:

  1. 确定正在编辑的页面的位置。本文是位于我网站上的/图书馆/每周文件夹中。
  2. 确定要链接到的页面或图像的位置。这初学者资源中心位于:/library/begin/
  3. 比较位置并决定如何指向它 从这里文章,我需要升级一个目录(到/库),然后返回到起始目录
  4. 使用上面列出的规则编写链接:...

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

相对路径始终相对于 CSS 位置,而不是引用 CSS 文件的网页位置。所以问题是,CSS文件的位置是什么?如果您创建相对于它的所有路径,它应该适用于您的生产和开发 URL。

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