CSS当中的相对路径和绝对路径

html-css09

CSS当中的相对路径和绝对路径,第1张

"." 代表当前所在目录, 相对路径 。如:<a href="./abc">文本</a>或<img src="./abc" />;

".." 代表上一层目录, 相对路径 。如:<a href="../abc">文本</a>或<img src="../abc"/>;

"../../" 代表的是上一层目录的上一层目录,相对路径。 如:<img src="../../abc" />;

"/" 代表根目录, 绝对路径 。 如:<a href="/abc">文本</a>或<img src="/abc"/>;

"D:/abc/" 代表根目录, 绝对路径 。

在使用相对路径时,我们用符号“.”来表示 当前目录 ;用符号“..”来表示 当前目录 的父目录。

下面是我的代码,div里面没有img标签,div有背景图,显示效果是背景图随着div的大小改变而改变,不知道你是不是要这种效果。找个图片试一下吧。把src写到css里不大可能...

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=utf-8">

<title>无标题文档</title>

<style type="text/css">

#div{ width:100pxheight:200pxbackground:url(images/red_380_104.jpg) no-repeat -1000px -1000px}

</style>

</head>

<body>

<div id="div"></div>

<script type="text/javascript">

var _div=document.getElementById('div')

var divStyle=document.defaultView?document.defaultView.getComputedStyle(_div,null):_div.currentStyle

var sImgurl=(/images.+\"/.exec(divStyle.backgroundImage))[0].split('"')[0]

var oImage=document.createElement("img")

oImage.src=sImgurl

oImage.width=(divStyle.width).split("px")[0]

oImage.height=(divStyle.height).split("px")[0]

_div.appendChild(oImage)

</script>

</body>

</html>

在CSS文件里,有时要用到background,即加一个背景图片,一般在做按钮样式时会经常用到。

css中加背景图片根据图片及css文件的相对位置分一下几种类型:

1.同包下:background : url(aaa.gif)

2.不同包:

在这种情况下有2中方法可以设置,一种是使用绝对路径,即http://www.域名.com/aaa.gif这种,不过一般不推荐这么用,不利于项目移植;一种是使用相对路径,首先需要找到图片文件和css文件共同的一个根目录,然后再加上图片的子目录,比如:

css文件位置:WebRoot/test/css/a.css

图片文件位置:WebRoot/platform/resource/images/icons/a.gif

想要找到共同的根目录就需要用到 "../" 这个路径的意思是上一级目录,如果是两层上级目录,就是 "../../" 那么,按照这种写法的话,a.css中得背景图片css应该这么写:

background:url(../../platform/resource/images/icons/a.gif)

详解:

首先,我们观察这两个文件的位置,可以发现,共同的根目录是WebRoot,

我们首先在a.css的位置找到WebRoot,所以有了"../../" 然后拼接图片的子目录的路径 又有了"platform/resource/images/icons/a.gif" 合在一起后就是上面的结果了。