我一直想知道其他网站如何进行导航链接。 像我这样的大多数初学者都把整个链接放在标签
中<a href="www.example.com/news.html">News</a>
或类似的东西:
<a href="news.html">News</a>
但我最近看到很多网站都是这样做的:
<a href="/news.html">News</a>
然后浏览器地址栏显示如下
首先我想知道你怎么称呼这种方法?这样做有什么好处。最后,它是如何运作的?。
我想研究它,但我不知道在谷歌上输入什么。我确实尝试过很多我能想到的与此相关的关键词,但没有什么能与我正在寻找的东西接近
答案 0 :(得分:1)
有4种基本链接类型:
自我链接:href=""
。这是“与自己联系”的简写形式。您会看到它用于页内锚点,例如href="#top"
和链接。
亲属:href="news.html"
。单击此按钮将尝试在SAME目录中加载news.html
页面作为包含链接的页面,因此如果您在http://example.com/foo/bar.html
上,则会尝试加载{{1} }}
本地绝对:http://example.com/foo/news.html
。这将尝试从网站的文档根目录加载href="/news.html"
页面。如果您在news.html
,则会尝试加载http://example.com/foo/bar/html
。前导http://example.com/news.html
是使其成为局部绝对而非相对路径的原因。
完全绝对:/
。一个完整的网址,如果需要可以指向一个完全不同的网站。它可以指向您所在的完全相同的站点,但基本上它是“去那里,无论在哪里”。
答案 1 :(得分:0)
最佳实践(对我来说?)是第一个,您需要为最易读的代码编写所有URL。
如果您使用相同的域名,则第一个和第三个链接是相同的。
第二个是不同的,如果你在www.example.com/index.html,你会去www.example.com/news.html .. 但是,如果您使用的是www.example.com/categoy/index.html,则会重定向到www.example.com/categoy/news.html而不是根目录。
但是我不明白你为什么要谈论/ news /目录?
答案 2 :(得分:0)
这与HTML有关,而与JavaScript有关。您的第一个代码段使用绝对路径。第二个使用相对路径。有关详细信息,请阅读:http://www.coffeecup.com/help/articles/absolute-vs-relative-pathslinks/
答案 3 :(得分:0)
相对网址可能会为您带来一些结果。
news.html
将相对于您当前的位置进行导航/news.html
将相对于根域名进行导航例如,如果您当前的位置为http://example.com/sub/
:
href="news.html"
会转到http://example.com/sub/news.html
但
href="/news.html"
会转到http://example.com/news.html
另见http://www.w3.org/TR/WD-html40-970917/htmlweb.html#h-5.1.2