超链接:html的a元素

Web 标准开发,指的是 XHTML 1.0 中的定义
--------------

开始标签:必需,结束标签:必需

属性定义:

name = cdata [区分大小写]
该属性命名当前锚,这样就可以被其它链接传递。该属性值必须是唯一的锚名。该名称仅在当前文档中有效。注意,该属性和 id 属性共享命名空间。
href = uri [CT]
该属性指定 Web 资源的位置,因此在当前元素(源锚点)和通过该属性定义的目的锚点之间定义了一个链接。
hreflang = langcode [不区分大小写]
该属性指定了通过 href 指派的资源的基本语言,并且仅在 href 被指定的情况下使用(也就是说如果 A 中没有指定 href 属性,就不应该出现 hreflang 属性)。
type = content-type [不区分大小写]
该属性指定链接资源所采用的内容类型。例如网页通常为 text/html。
rel = link-types [不区分大小写]
该属性描述了从当前文档到通过 href 属性定义的锚点之间的关系。该属性值是通过空格分隔的 link 类型(值)的列表(在 Web 标准开发中,这个通常用来代替 target 属性,配合脚本,用来表示目的窗口)。
rev = link-types [不区分大小写]
该属性用来描述从通过 href 属性指定的锚点到当前文档的反向链接。该属性值是通过空格分隔的 link 类型(值)的列表。
charset = charset [不区分大小写]
该属性指定了通过链接指派的资源的字符编码。

其它属性:

* id, class (document-wide identifiers)
* lang (语言信息), dir (文本方向)
* title (元素标题)
* style (行间样式信息)
* shape and coords (图像地图)
* onfocus, onblur, onclick, ondblclick, onmousedown, onmouseup, onmouseover, onmousemove, onmouseout, onkeypress, onkeydown, onkeyup (内置/默认行为)
* target (目标框架信息)[注意,Web 标准开发中,已经不采用该属性]
* tabindex (选中的导航)
* accesskey (快捷键)


定义锚点:

在我们实际应用中,定义了 name 属性的,我们通常称之为锚点,定义了 href 属性的,我们称之为链接。锚点,可以看作是定义了一个被访问的点,而链接,则是通往某个点的出发点。当然,也可以同时定义 href 和 name 属性。

href 属性的使用我们一般都很熟悉,对于 name 属性的使用,例如:

<a name="anchor0"></a>
<a name="anchor1">anchor one</a>

定义锚点,默认情况下并不会在 anchor one 上产生“链接样式”,诸如下划线和颜色等。

如果要访问当前文档的某个部分,可以通过下面的链接:

<a href="#anchor1">anchor one</a>

这样就产生了一个链接,点击,会跳转到 <a name="anchor1">anchor one</a> 锚点定义的文档部分,并且该锚点位于窗口当前位置最顶端。

如果要访问其它文档中的锚点,有绝对链接和相对链接两种方式:

<a href="http://www.aspxuexi.com">anchor 0</a> 绝对链接
<a href="index.html#anchor0">anchor 0</a> 相对链接

使用方式和路径访问差不多,我们其实可以看作是先访问了对应的 index.html 页面,然后跳转到 anchor0 锚点所在的位置。

一定要注意的是访问锚点的格式,在锚点名称前面加上 #,但是定义锚点的时候,name 属性中并不需要使用 # 。

注意,name 属性是大小写敏感的,也就是说 xxx 和 XXX 是不同的锚点名称,这个在不同的浏览器下可能会有不同的处理效果,所以实际进行 Web 开发的时候,最好统一大小写。在 Web 标准开发中,所有的属性值都必须采用小写。

通过 a 定义的链接和锚点,是不允许嵌套的。

使用 id 属性定义锚点:

任何使用 id 属性的元素,都可以看作是一个锚点,可以通过链接访问。例如:

<h2 id="headling">Headling</h2>
...
<a href="#headling">Headling</a>

当然,这个也适合 A 元素,例如 <a id="headling"></a>。

但是必须注意的是,id 和 name 属性使用相同的命名空间,所以同一个页面中不能出现两个相同名称的锚点,例如在某个元素中使用 id 属性定义了一个锚点 abc ,在另一个元素 A 中又通过 name 属性定义了一个锚点 abc ,这样是不允许的。但是对于 A、APPLET、FORM、FRAME、IFRAME、IMG、和 MAP等元素,可以同时使用相同的 id 和 name 值来作为唯一标识,不过一旦是用了这两个属性,就应该保持一致。例如:

<p><a name="a1" id="a1" href="#a1">...</a></p>

关于样式:

我们一般通过 CSS 中的伪类来定义链接样式,大家应该熟记一个规则——“LoveHate”,所谓的“爱恨”规则,即定义四个伪类的顺序应该是:

a:link (L)
a:visited (V)
a:hover (H)
a:active (A)

当您抱怨定义的链接颜色不对的时候,检查一下这个顺序是否正确。

关于标准:

在 Web 标准开发中,注意 A 元素必需位于 P、h1、h2、h3、h4、h5、h6、DIV、PRE、ADDRESS、FIELDSET、INS、DEL等元素中。这个是常见的错误之一。

校验信息如下:

引用:
document type does not allow element "a" here; missing one of "p", "h1", "h2", "h3", "h4", "h5", "h6", "div", "pre", "address", "fieldset", "ins", "del" start-tag. 


定义了 target 属性


引用:
there is no attribute "target". 


解决方法请参考:http://www.aspxuexi.com/design/2006-5-26/target_blank.htm

下面是通过 XHTML 1.0 Strict 的代码片断:


HTML 代码:
<p><a name="abc" href="http://www.w3.org/" hreflang="en" type="text/html" rel="foo" rev="foo" charset="iso-8859-1" id="abc" class="mylink" lang="en" dir="ltr" title="my link" style="color: red;" οnfοcus="this.select();" οnblur="this.style.color='green';" οnclick="alert('Click');" οndblclick="alert('Double click');" οnmοusedοwn="alert('Mouse down');" οnmοuseup="alert('Mouse down');" οnmοuseοver="alert('Mouse over');" οnmοusemοve="alert('Mouse move');" οnmοuseοut="alert('Mouse out');" οnkeypress="alert('Key press');" οnkeydοwn="alert('Key down');" οnkeyup="alert('Key up');" tabindex="1" accesskey="k">my link</a></p>

from: asp学习网/title:超链接:html的a元素/ time:2006-5-26 3:27:02  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值