当前位置: 首页 > 图文教程 > 网站运营 > 网站优化 > 走出路径的困惑

网站优化
让百度一星期内收录方案 博客收录总结
新站百度只收录首页后又删除的解释
预测日IP上万的最新关键词
SEO 经验总结
wordpress 博客永久链接完整rewrite规则
搜索引擎 判断原创文章的一些猜测
google 已经可以抓取flash加载的外部资源
Google 官方对链接nofollow的政策
百度7月22日大更新研究 百度算法彻底改变
7月26日 百度算法再次波动的处理方法
近期百度大违常理排名全面解析
百度排名的一些初步分析
近日百度连续K站拔毛的原因分析
如何看待近日的百度调整算法事件
SEO基础之建立网站地图
另类的新站推广方法
网站优化 学习笔记
微软 Bing(必应)seo优化的建议
SEO 网页中需要重点强调的内容
认识搜索引擎优化(SEO)

网站优化 中的 走出路径的困惑


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-02   浏览: 45 ::
收藏到网摘: n/a

  如果您刚刚开始接触网页设计,是不是经常发生这样的问题呢?做好的网页在自己机器上可以正常浏览,而把页面传到服务器上就总是出现看不到 图片 , css 样式表失效等错误。这种情况下多半是由于你使用了错误的路径,在应该使用相对路径的地方使用了 绝对路径 ,导致浏览器无法在指定的位置打开指定的文件。 下面我们就来谈一下最让初学者头疼的相对路径与绝对路径的区别问题。 什么是 绝对路径: 大家都知道,在我们平时使用计算机时要找到需要的文件就必须知道文件的位置,而表示文件的位置的方式就是路径,例如只要看到这个路径:c:/website/img/photo.jpg我们就知道photo.jpg文件是在c盘的website目录下的img子目录中。类似于这样完整的描述文件位置的路径就是绝对路径。我们不需要知道其他任何信息就可以根据绝对路径判断出文件的位置。而在网站中类似以http://www.pckings.net/img/photo.jpg来确定文件位置的方式也是绝对路径。 另外,在网站的应用中,通常我们使用"/"来表示根目录,/img/photo.jpg就表示photo.jpg文件在这个网站的根目录上的img目录里。但是这样使用对于初学者来说是具有风险性的,因为要知道这里所指的根目录并不是你的网站的根目录,而是你的网站所在的服务器的根目录,因此 当网站的根目录与服务器根目录不同时,就会发生错误 。 什么是 相对路径: 让我们先来分析一下为什么会发生图片不能正常显示的情况。举一个例子,现在有一个页面index.htm,在这个页面中联接有一张图片photo.jpg。他们的绝对路径如下:

c:/website/index.htm c:/website/img/photo.jpg

如果你使用绝对路径c:/website/img/photo.jpg,那么在自己的计算机上将一切正常,因为确实可以在指定的位置即c:/website/img/photo.jpg上找到photo.jpg文件,但是当你将页面上传到网站的时候就很可能会出错了,因为你的网站可能在服务器的c盘,可能在d盘,也可能在aa目录下,更可能在bb目录下,总之没有理由会有c:/website/img/photo.jpg这样一个路径。那么,在index.htm文件中要使用什么样的路径来定位photo.jpg文件呢?对,应该是用相对路径,所谓相对路径,顾名思义就是自己相对与目标位置。在上例中index.htm中联接的photo.jpg可以使用img/photo.jpg来定位文件,那么不论将这些文件放到哪里,只要他们的相对关系没有变,就不会出错。 另外我们使用“../”来表示上一级目录,“../../”表示上上级的目录,以此类推。(学习过dos的朋友可能更容易理解) 再看几个例子,注意所有例子中都是index.htm文件中联接有一张图片photo.jpg。 例:

c:/website/web/index.htm c:/website/img/photo.jpg

在此例中index.htm中联接的photo.jpg应该怎样表示呢? 错 误写法:img/photo.jpg 这种写法是不正确的,在此例中,对于index.htm文件来说img/photo.jpg所代表的绝对路径是:c:/website/web/img/photo.jpg,显然不符合要求。 正 确写法:使用../img/photo.jpg的相对路径来定位文件 例:

c:/website/web/xz/index.htm c:/website/img/images/photo.jpg

在此例中index.htm中联接的photo.jpg应该怎样表示呢? 错 误写法:../img/images/photo.jpg 这种写法是不正确的,在此例中对于index.htm文件来说../img/images/photo.jpg所代表的绝对路径是:c:/website/web/img/images/photo.jpg。 正 确写法:可以使用../../img/images/photo.jpg的相对路径来定位文件 例:

c:/website/web/xz/index.htm c:/website/web/img/photo.jpg

在此例中index.htm中联接的photo.jpg应该怎样表示呢? 错 误写法:../../img/photo.jpg 这种写法是不正确的,在此例中对于index.htm文件来说../../img/photo.jpg所代表的绝对路径是:c:/website/img/photo.jpg。 正 确写法:可以使用../img/photo.jpg的相对路径来定位文件 总结: 通过以上的例子可以发现, 在把绝对路径转化为相对路径的时候,两个文件绝对路径中相同的部分都可以忽略,不做考虑。只要考虑他们不同之处就可以了。 如何 修改样式表的路径: 使用文本编辑器打开htm文件,查看源代码,在源代码的开头部分......标记中间找到。“Href=”后面的内容就是css的路径,我们可以根据以上的知识进行相对路径的转换。 例:

c:/website/web/xz/index.htm c:/website/css/test.css

在此例中index.htm中联接test.css文件,可以使用../../css/test.css的相对路径来定位文件,完整的代码标记是:错误写法举例:../../../css/test.css 这种写法是不正确的,在此例中对于index.htm文件来说../../../css/test.c