2010-05-20 101 views
2

工作不适合我的图像具有以下文件结构:相对路径的css

C:/wamp/myproject/admin/webroot/images

我有一个index.php文件躺在其调用文件的header.inc.php趴在管理文件夹中相同的文件夹。的header.inc.php有以下代码 -

<td align="left" valign="top" class="header-bg"> 
<table width="100%" border="0" cellspacing="0" cellpadding="0"> 

的index.php呼吁通过下面的代码css文件(css.css):

<link href="<?php echo (WS_DIR_CSS); ?>/css.css" rel="stylesheet" type="text/css" /> 

的CSS主要表现在以下位置: C:/wamp/myproject/admin/webroot/css

的CSS文件具有具有下面的代码的类:

.header-bg { 
    background:url(../images/header_bg.jpg) left top repeat-x; 
    height:77px; 
} 

图片header_bg.jpg未在浏览器中显示。帮助任何人?

+2

布局表,如何古怪... – Quentin 2010-05-20 13:19:22

+0

是“图像”自己的目录在webroot(css目录之外)? – RussellUresti 2010-06-02 18:15:03

回答

0

看着你的服务器日志,看看实际上正在请求哪些文件。很可能你的网址混在了一起。

2

图像header_bg.jpg没有被显示在浏览器。

有上百种可能的原因:从您的浏览器设置为阻止图像,文件系统权限拒绝读取访问的服务器上。在不了解更多重要细节的情况下,一个好的开始就是搞清楚你是否是浏览器,甚至试图获得图像。这是Firebug(通过Firefox插件)或其他类似浏览器插件派上用场的地方。

+0

使用Firebug或其他调试工具查看问题的真实位置。用你发布的代码,似乎没有什么不对,所以它应该起作用,这意味着除了你的路径之外,还有其他的问题。 – cincodenada 2010-08-12 15:40:23

7

图像包括相对的CSS

,如果你的形象是住在这里......

/images 

和你的CSS住在这里......

/somefolder/css/style.css 

那么规则会be

background-image:url(../../images/header_bg.jpg); 

你可以检查使用萤火虫的元素?是否有任何重写规则可能会重新路由请求?你对图像有读权限吗?

+1

该规则必须是'/ images/header_bg.jpg'。学习使用绝对地址 – 2010-08-11 16:15:20

+0

学习阅读OP,是的,他*可以*使用绝对路径,但这不是他在他的例子中所做的。使用../../images/header_bg.jpg完全有效,*将*如上所述工作。 – michael 2010-08-12 08:20:31

+2

我回答了没有回答的问题。该解决方案发布了OP的问题的作品,他没有说任何关于它为其他文件夹工作的问题 – michael 2010-08-12 10:26:35

-3

相对寻址没有被设计工作。
这就是为什么一个人应该使用绝对地址。

  1. 让自己知道什么是实际header_bg.jpg地址相对于网站根。例如
    /images/header_bg.jpg
  2. 使用该地址。
    带或不带WS_DIR_CSS帮手,但在HTML代码必须是/images/header_bg.jpg或任何绝对地址。
+0

相对寻址不是按设计工作的。 - 这完全是错误的。相对路径工作得很好。 – michael 2010-08-12 08:31:55

+0

去告诉OP大声笑 – 2010-08-12 08:35:40