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

网站优化
搜索引擎不认图片 网页设计越简单越好
SEO不是简单的技术问题
设计人员必读:影响SEO的页面制作细节
工具条能帮助网页被Google收录吗?
百度研究:如何使你的网站受百度欢迎
Google排名不是简单的网页优化
第三代google排名搜索引擎技术与P2P
网页怎么样的跳转不属于作弊?
搜索引擎不收录网站页面的常见原因
网站优化:您的网站适合访问么?
SEO研究:百度的搜索排名原则
执行seo项目时容易出现的八大错误
搜索引擎优化:Title在seo中越来越重要
关于Google Sitemap的几点认识
网站站长如何做好网站的搜索引擎优化
SEO优化:关键字密度与网站排名
Google优化网站管理员指导方针
如何让百度天天更新你、收录的更多
影响网站在google排名的十大问题
如何提高网站的Google PR值

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-02   浏览: 321 ::
收藏到网摘: 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