为了账号安全,请及时绑定邮箱和手机立即绑定

我应该用‘name’或‘id’来制作HTML锚吗?

我应该用‘name’或‘id’来制作HTML锚吗?

守着一只汪 2019-06-15 11:28:14
我应该用‘name’或‘id’来制作HTML锚吗?当您想要引用网页的某个部分时,请使用http://example.com/#foo“方法,应该使用吗?<h1><a name="foo"/>Foo Title</h1>或<h1 id="foo">Foo Title</h1>它们都起作用,但它们是平等的,还是有语义上的差异?
查看完整描述

3 回答

?
精慕HU

TA贡献1845条经验 获得超8个赞

根据HTML 5规范,5.9.8导航到片段标识符:

对于HTML文档(以及text/html MIME类型),必须遵循以下处理模型来确定文档的指定部分。

  1. 解析URL,并让fragid成为URL的<片段>组件。
  2. 如果fragid是空字符串,那么文档的指定部分是文档的顶部。
  3. 如果DOM中有一个ID完全等于fragid的元素,那么按树顺序排列的第一个这样的元素是文档的指定部分;请在这里停止算法。
  4. 如果有一个

    a

    元素中的元素,该元素具有一个name属性,其值与fragid完全相等,那么按树顺序排列的第一个此类元素是文档的指定部分;请在此停止算法。
  5. 否则,文件中没有指明的部分。

所以,它会寻找id="foo",然后将跟随到name="foo"

编辑:正如@xivonen所指出的,在HTML 5中,a元素没有name属性。然而,上述规则仍然适用于其他命名元素。


查看完整回答
反对 回复 2019-06-15
?
慕娘9325324

TA贡献1783条经验 获得超4个赞

我不得不说,如果你要链接到页面中的那个区域.例如page.html#foo和foo title不是您应该使用的链接:

<h1 id="foo">Foo Title</h1>

如果你把一个<a>你的标题会受到<a>特定的CSS在您的网站。这只是额外的标记,你不应该需要它。我强烈建议在标题上放置一个id,不仅它的格式更好,而且它将允许您在Javascript或CSS中访问该对象。


查看完整回答
反对 回复 2019-06-15
  • 3 回答
  • 0 关注
  • 664 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信