3

我对路径有一个奇怪的问题,这个有效(在 Windows 上):

<div style="background:url('folder1/image.gif')...

但是这个不起作用(没有图像显示):

<div style="background:url('/folder1/image.gif')...

仍然这个页面说完全相反(不是第一个版本,但第二个版本应该可以工作):Background not working for a div

有人知道可能是什么原因吗?

4

4 回答 4

2

第一个 url 相对于服务器中的文件夹,您的 HTML 用于呈现页面。

例如,如果你得到:

www.mywebsite.com/index.html

它将调查:(示例 2)

www.mywebsite.com/folder1/image.gif

但是如果您在另一个文件夹中,例如:

www.mywebsite.com/subfolder/index.html

它将查看:

www.mywebsite.com/subfolder/folder1/image.gif

如果您在开头使用“/”,则路径不是相对的,它总是在根网站中查找,就像示例 2 一样,无论您的 html 位于何处。

于 2013-01-26T21:24:48.437 回答
0

第一个是相对路径,第二个是绝对路径

相对路径显示来自调用上下文的文件路径。因此,如果您的 html 文件是 /source/website/test.html,则 的相对路径css/test.css将指向/source/website/css/test.css

绝对路径显示与整个路径有关,因此/css/test.css尝试在该位置查找文件/css/test.css

于 2013-01-26T21:22:45.870 回答
0

取决于您的图像和 html 文件所在的位置。

'folder1/image.gif'将搜索与您的 html 文件(相对路径)位于同一路径的文件夹 1。

'/folder1/image.gif'将从服务器的基本位置(绝对路径)开始搜索文件夹 1。

于 2013-01-26T21:23:51.103 回答
0

大多数现代浏览器都允许您检查网页上的元素。在 chrome(或其他现代浏览器)上打开控制台并查找错误,如果图像 url 错误,控制台将指示它为错误,此外,如果您指定了错误的 url,您将得到损坏的图像图标

图像-1

于 2013-01-26T21:32:00.310 回答