<a href="mailto:jon@example.org">Email Jon</a>
常用的<a>
的属性有:
href – 指定超链接的目的地址(url)(最重要的属性)
rel – 规定当前文档与目标 URL 之间的关系,一般不用设置,属性值可以是
alternate – 可相互替代的内容
author – 文档作者
bookmark – 书签
nofollow – 告诉搜索引擎不要此链接到的权重(可以理解为表示虽然链接了目标网页,但是却不认可目标网页)
target – 指定超链接的打开方式,一般不设置该属性,属性值可以是
_blank – 在新的窗口打开
_self – 在当前窗口打开
name – 规定锚的名称(此属性在 HTML5 中已被去掉。)
class – 规定元素的类名(classname)
id – 规定元素的唯一 id,常用于制作页面内部链接(锚点)
style – 规定元素的行内样式(inline style)
title – 规定元素的额外信息(标题,可在工具提示中显示)
onclick – 鼠标点击时的动作
HTML 链接的使用语法如下(尽量包含了上面的各个属性),
<a class="example-class" id="example-a-id" style="text-decoration: none; font-weight: bold;" title="这是一个 HTML 链接示例,链接到网站首页" href="https://cnzhx.net/" target="_blank" rel="alternate bookmark">水景一页</a>
点击上面的链接会打开网站。鼠标悬停时能看到提示语,也就是 title 属性的值。
上面示例中的四个字”水景一页“也可以是图片,或者其它 HTML 元素。
如果目标地址是个目录(或目录形式),最好总是给链接的结尾加上一个 / 符号。例如,如果链接是
href="https://cnzhx.net/blog"
, 点击后服务器需要响应两次请求,第一次会将链接转变为
href="https://cnzhx.net/blog/"
第二次才打开转变后的网址(过程应该很快,但是我们应该尽量避免这种不必要的过程)。
前面提到过,id 属性常被用于创建到当前页面(文档)内部的链接,其作用类似于锚点(anchor)。也因此,HTML5 中将用于制作锚点的 的属性 name 取消了。
例如,在下面的位置创建一个”内部链接锚点位置“:
内部链接锚点位置
<a id="tips">内部链接锚点位置</a>
在同一个文档的其它位置创建一个到”内部链接锚点位置“的链接就是:
<a href="#tips">访问”内部链接锚点位置“</a>
而如果在别的文档中,还需要在 #tips 前面加上到目标文档的链接地址:
<a href="https://cnzhx.net/blog/html-links/#tips">访问 ”HTML 链接“ 页面上的”内部链接锚点位置“</a>
所有支持 id 属性的 HTML 标签都可以做为锚点,直接创建到该锚点的链接就可以了。如,
<h1 id="h1anchor">标题一</h1>
就有了一个锚点 h1anchor。比如本文内部的几个小标题都设有锚点,并且在标题后面还用一个符号建了个超链接到当前锚点的位置。这主要是因为在页面上是看不到锚点的,查看页面源文件才能看到,不方便。可以点击这里跳转到 1. 创建到其它页面的链接 试试看。
同一个页面内部不能有重复的 id 属性值。
如果创建了一个指向页面内部位置的超链接,但是却没有写锚点文本,如
<a href="https://cnzhx.net/blog/html-links/#">本文</a>
就会指向该页面的顶部。例如本站页面底部的”TOP“按钮就是用这种方式制作的(查看回到顶部按钮的制作方法)。
另外,本站给文档内部锚点都用一个符号 ¶ 标记出来了,将下面的代码放到锚点后面就可以了(注意将其中 # 号后面的文本 anchor 改成对应的猫点名称):
<span class="anchorlink"><a href="#anchor">¶</a></span>
其中 anchorlink 类的 CSS 样式是:
.anchorlink {
background-color: transparent;
color: transparent;
text-decoration: none;
font-size: smaller;
margin-left: 0.25em;
margin-right: 0.25em;
padding-left: 0.5em;
padding-right: 0.5em;
}
.anchorlink a:link {
background-color: transparent;
color: transparent;
text-decoration: none;
}
h1:hover .anchorlink a,
h2:hover .anchorlink a,
h3:hover .anchorlink a {
color: lightgray;
}
<a href="#top"> 当前页面内某个位置
<a href="movies/dvd/#top"> 当前网站内某个位置
<a href="http:/www.baidu.com/#top"> 其他网站的某个位置