2012-08-14 30 views
3

我是一个初学者程序员,看了几个资源,但我无法弄清楚为什么外部CSS样式表的位置很重要。例如,改变链接到该文件和该文件的位置,分别将确定是否一图象负载或不:为什么外部CSS样式表的位置很重要?

在CSS一个简单的一行:

body { 
    background: url(./images/test.jpg) center center fixed no-repeat; 
} 

这将加载的图片:

<link rel="stylesheet" href="style.css" type="text/css" charset="utf-8" /> 

这不会:

<link rel="stylesheet" href="css/style.css" type="text/css" charset="utf-8" /> 

为什么?

+1

有一个在css文件夹中没有图像文件夹。 – Annabelle 2012-08-14 01:41:58

回答

2

它是因为您的css文件夹中没有images文件夹。它与css文件相关,而不是html文件。

您可以修复它,如下所示:

body { 
    background: url(../images/test.jpg) center center fixed no-repeat; 
} 

这件事去根目录,然后再进入images文件夹。

然后你可以使用你的CSS行:

<link rel="stylesheet" href="css/style.css" type="text/css" charset="utf-8" /> 
+0

你的回应是最丰富的。谢谢你的回答非常彻底。 – AaronAAA 2012-08-14 01:58:32

+0

没问题,我们在这里。 – Annabelle 2012-08-14 02:09:24

2

图像位置是相对于CSS文件的位置而不是HTML文件的位置。

+0

+1 - The。在路径中引用当前目录(css文件所在的位置)。你需要一个硬编码路径(/images/test.jpg)或一个目录下的相对路径(../images/test.jpg) – 2012-08-14 01:56:25