css样式表路径,坚持文件本身所在的位置?

时间:2012-04-22 06:03:12

标签: html css file path

我在根文件夹中有一个css文件,它引用里面的文件,相对于它的路径。

例如stylesheet.css和image.png在一个文件夹中,召唤如下:

background-image:url('image.png');

当我将它附加到index.html时如下:

<LINK rel="stylesheet" type="text/css" href="stylesheet.css">

...它加载得很好,但如果想将它附加到子文件夹的文件:

<LINK rel="stylesheet" type="text/css" href="../template_style.css">

...模板加载,但它实际上是在从它启动的html文件的文件夹中查找image.png,而不是从css文件本身的文件夹中查找。

有没有解决这个问题?

3 个答案:

答案 0 :(得分:2)

添加 <base href="http://www.example.com/">

head

有了这个,你只需要添加:

<link rel="stylesheet" type="text/css" href="stylesheet.css">

如果是域或子域,如果您的css位于公共根文件夹(stylesheet.css)内,则href必须为http://www.example.com/stylesheet.css

答案 1 :(得分:1)

CSS相对路径是相对于CSS文件本身而不是加载CSS文件的页面。

我通常将我的CSS文件放在/ css中,将CSS的图像放在/ css / images中。然后你可以把你的图像相对像:

background-image:url('images/image.png');

答案 2 :(得分:1)

<link rel="stylesheet" type="text/css" href="../(supposed to be subfolders name)/template_style.css">

并且对于同一图像,如果两个文件都在同一文件夹中,请确保css和图像位于同一文件夹或同一位置。

background-image:url("../image.png");

如果您制作一个单独的图像文件夹,那将是非常感激的。

background-image:url("../folder name/image.png");