38

我最近开始学习 html,真正让我困惑的一件事是为什么有些链接在路径前有一个正斜杠(“/”)而有些链接没有?

IE。

<link href="/favicon.png" rel="icon">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet" type="text/css">

对比

<dt><a href="reset/index.html">Reset CSS</a></dt>

一个是相对路径,一个是绝对路径吗?href 是如何工作的?它只是在基本 url 之后的路径名上粘贴吗?

4

1 回答 1

60

一个是相对路径,一个是绝对路径吗?

是的。

如果您的浏览器当前指向http://foo/bar/baz.htmlthen:

  • <a href="reset/index.html">将链接到http://foo/bar/reset/index.html.
  • <a href="/reset/index.html">将链接到http://foo/reset/index.html.

如果HTML 文档的头部有一个基本元素,那么相对路径将是相对于基本元素的。例如,http://example.com/foobar/reset/index.html无论页面位于何处,此处的链接都会将您带到。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<HTML>
 <HEAD>
   <TITLE>Base element example</TITLE>
   <BASE href="http://example.com/foobar/">
 </HEAD>

 <BODY>
   <P><a href="reset/index.html">Reset CSS</a>
 </BODY>
</HTML>
于 2012-05-18T20:46:38.253 回答