我有一个非常简单的 CSS 将背景图像应用于<li>
元素
.icon-facebook { background: url("./images/icon_facebook.png") no-repeat; }
当我在本地查看它时效果很好,没有网络服务器,即通过双击 .html 文件。
但是一旦我通过 Apache 提供相同的页面 - 无论是在本地主机还是生产服务器上 - 背景图像都会消失。
页面上的其他背景图像工作正常 - 并且都具有相同的(相对)路径。
指定背景图像的绝对路径也不起作用。
重命名文件不起作用。
如果直接在浏览器中导航到,图像可以很好地显示。
监视 Apache 的访问日志,浏览器甚至不会尝试请求图像 (!),即使在 CSS 中提供了绝对 URL。
当我检查<li>
Firebug 时说“无法加载给定的 URL”但是当我直接从 Firebug 中的 CSS 复制背景图像 URL 并将其粘贴到新选项卡中时 - 你猜怎么着?有用。
我<div>
在同一页面上有一个来自同一文件夹的不同背景图像,效果很好。当我用我的“问题”文件之一替换它的文件名时,我注意到它不再显示了。
有问题的图像是 20x20px PNG(但我也尝试过 JPG)。
所有其他浏览器都可以正常工作。
这真的让我发疯。