设置<a href=""> when it&#39;s a local file</a>的正确方法

时间:2012-08-18 19:53:57

标签: html file firefox hyperlink href

我正在尝试链接到本地​​文件。我将href设置如下:

<a href="file://C:/path/to/file/file.html">Link Anchor</a>
  • 在Firefox中,当我右键单击并“在新标签页中打开链接”时,没有任何反应。

  • 当我右键单击并“复制链接位置”时,手动打开一个新选项卡并粘贴复制的链接,它可以正常工作。所以看来我的file://语法很好。我也尝试过像file:///这样的3个斜杠,但结果却是一样的。

我做错了什么?

7 个答案:

答案 0 :(得分:10)

在分层目录中整理文件,然后只使用相对路径。

演示:

HTML(index.html)

<a href='inner/file.html'>link</a>

目录结构:

base/
base/index.html
base/inner/file.html
....

答案 1 :(得分:9)

根据定义,文件:URL是系统相关的,它们几乎没有用处。示例中的URL在本地使用时起作用,即链接页面本身位于用户的计算机中。但是浏览器通常拒绝跟随文件:链接在它使用HTTP协议获取的页面上,因此页面自己的URL是http:URL。当您单击此类链接时,没有任何反应。其目的可能是安全性:防止远程页面访问访问者计算机中的文件。 (我认为此功能首先在Mozilla中实现,然后复制到其他浏览器。)

因此,如果您在计算机中使用HTML文档,则文件:URL应该有效,尽管它们的语法存在系统相关问题(如何在这样的URL中编写路径名和文件名)。

如果您确实需要在计算机上使用HTML文档和在Web服务器上使用其他HTML文档,那么使链接工作的方法是使用本地文件作为主文件,并且如果需要,使用客户端脚本来从服务器获取文档,

答案 2 :(得分:2)

基础标记内的href值将成为所有相对路径的参考点,因此会覆盖当前目录路径值 - 否则“〜”是您网站的根

input.hide:checked ~ label.trigger ~ .drawer:first-of-type,
input.hide:checked ~ .dot-bor ~ .drawer:first-of-type {
    max-height: 2500px !important;
}

答案 3 :(得分:1)

当您运行IIS并通过它运行html页面时,可能会发生这种情况,然后无法访问Local file system

要使您的链接在本地工作,直接从文件浏览器运行调用html页面而不是visual studio F5IIS只需单击它以从文件系统打开,并确保您使用像这样的链接:

<a href="file:///F:/VS_2015_WorkSpace/Projects/xyz/Intro.html">Intro</a>

答案 4 :(得分:0)

../ htmlfilename with .html 用户可以这样做 这将解决您重定向到本地文件的任何页面的问题。

答案 5 :(得分:0)

尝试将冒号:换成小节|。应该这样做

<a href="file://C|/path/to/file/file.html">Link Anchor</a>

答案 6 :(得分:0)

<块引用>

当它是本地文件时设置a href=""的正确方法。 代码或文件在线时不会产生任何问题。

<a href="./your_file_name.html">FAQ</a>

希望能帮到你。