css用相对路径为什么找不到

html-css065

css用相对路径为什么找不到,第1张

相对路径和绝对路径,../表示返回上一级,因为css文件在css文件夹里,图片在images文件夹下,那么layout.css就需要返回上一级找到images文件夹才能找到相应的图片。直接文件夹名或是./开头表示和当前平级,因为index.html和images文件夹平级。不管是带../还是不带,这种写法都叫相对路径;另一种叫相对于根目录路径,它的写法必须以/开始,意思是从根目录开始一级一级向下查找,不管在哪里,要使用pic4.gif这个图片,路径都必须是/images/pic4.gif;还有一种写法叫绝对路径,是以http://加域名开始的,这个不多多说了。

使用相对路径时,当根目录放到一个二级目录下时,文件仍然可以正常访问,而使用相对于根目录路径时,其中一个页面放到其它位置时,照样能关联么相关的图片和其它文件,比如:本例如果用相对于根目录路径的话,把index.html放到一个文件夹下后,还是可以正常访问的。总之两种方法各有优劣,根据你的需要采用一种合适的方法。相对路径和相对于根目录路径是可以相互更改的,在站点管理——编辑——高级设置的本地信息里有链接相对于,如下图,默认为文档(就是所说的相对路径),也可以改为站点根目录,相对路径一般为直接目录名,需要返回上级时用../,向上返回两级时用../../;相对于根目录路径始终以/开头,不管该文件现在在哪一级,它都是以根目录开始向下找。

如果是外联css(css文件与html文件分离的),则css中的图片路径是相对于css文件而不是html文件的,比如你附图中的那个png图片,应该位于css文件的上级目录的images子目录的kpjh子目录中,否则就出错。如果网站的目录结构比较复杂,很难理清文件的相对关系,可以使用绝对路径,比如说images目录假如位于网站的根目录,那么你可以用 /images/kpjh/... ,也就是把开头的两个小数点去掉。更保险的办法是在前面加上网址变成完整的url,这样即使图片文件放到其他网站也能调用。如果希望得到更简单的方法,那么可以把css文件与图片文件放在同一个目录,这样css文件中就不需要再写图片的路径了,直接写图片文件名即可

如果是内联css(css代码直接写到html文件中),则图片路径是相对于html文件的。

所以你要自己检查一下图片路径是否写正确,然后根据我上面的说明进行修改。

那就用background:url(/image/leafjpg)

或者background:url(image/leafjpg)等价于上面那个

/根目录

~/虚拟站点根目录

/上级目录(//上上级目录)

/当前目录

假设你通过虚拟目录新建了个的aspnet站点,名字是site

则你的站点访问路径CSS引用图片相对路径符号怎么写?