经常听到有客户苦述自己的网页中有许多图片不能正常显示,究竟为什么不能正常显示呢?总结其原因绝大部分都是因为使用了错误路径所致。网页中的图像、动画等素材都有自己固定的存放位置,网页只是通过路径使用HTML语言来调用它们,然后把它们显示在网页中。在网页中的路径大体可分为相对路径和绝对路径。
1、什么是相对路径?什么是绝对路径呢?
路径指明文件在服务器中的位置.绝对路径呢,就是始终是以服务器名(如http://www.51rich.net)开始的完整地描述文件位置的路径,比如我有一个文件叫001.htm放在51rich服务器的web文件夹里,那么我用绝对路径来显示这个文件的话就是: http://www.51rich.net/web/001.htm 。另外,在这个网页文件里我插入了一张名叫logo.jpg的文件图片来增加网页的美观.我把它放在服务器web文件下的一个叫001的文件夹里,那么我们用绝对路径来显示这个图片的话就是:http://www.51rich.net/web/001/logo.jpg 。不知您是否注意到,001文件夹及001.htm网页文件都是存放在服务器的web文件夹里的。通常我们做模板或者网页的时候,都会把网页所需要的所有图片,都存放在同一个文件夹里。这个htm格式的网页文件与图片文件夹可以同名。锐奇软件的模板正是采用这种命名方式。
而相对路径只能指定在服务器与它们在同一文件夹的目标.如上例中,001.htm与001文件夹都是放在web文件夹里.所以当001.htm这个网页要调用001文件夹里的图片logo.jpg时,就可以用相对路径来表示了,相对路径就是001/logo.jpg。即可以省去与001.htm相同的那部分网址。您可以对照一下:
001.htm的绝对路径: http://www.51rich.net/web/001.htm
logo.jpg的绝对路径: http://www.51rich.net/web/001/logo.jpg
logo.jpg的相对路径: 001/logo.jpg
2、什么是本地路径?什么是服务器路径?
本地路径就是以file://开头的路径.而服务器路径都是以http://开头的路径.您在用dreamweaver软件在自己的电脑里做模板时,将C盘的set文件夹里的p.jpg图像插入到网页里,它的绝对路径就是file://C/set/p.jpg,那么在本地电脑中浏览时将一切正常,因为在c盘的set文件夹下的确存在p.jpg这个图片。但您将它上传到网站服务器的web文件夹里之后,就不会正常显示了,因为服务器上的路径是以服务器名如(http://www.51rich.net)开始的,那么图片路径明显就错误了.所以在用dreamweaver做网页时就必须使用相对路径了,如set/p.jpg来定位文件,这样当模板做好时,把set文件夹及set.htm上传到服务器的web目录下,这样本地预览和服务器上都能正常显示了.
另外还有一种原因导致图片不能正常显示,就是直接COPY别人网站上的图片到后台的网页编辑器里,这些图片是存放在别人的服务器里的。如果他的网站不需要这些图片了,就会从服务器里删掉。与此同时,您从他网站COPY过来的图片也不能显示了。所以,如果一定要COPY别人的图片的话,就要先把图片保存到自己的电脑里,然后再上传到后台“我的文档”里,最后在网页编辑器里插入图片即可。这样一来,图片就存放在您这套软件的服务器里了,如果您不删,图片都会一直正常显示。