我应该使用“名称”或“ id”制作HTML锚吗?
当要使用“ http://example.com/#foo
”方法引用网页的某个部分时,应使用
<h1><a name="foo"/>Foo Title</h1>
要么
<h1 id="foo">Foo Title</h1>
它们都起作用,但是它们是相等的还是语义上的差异?
回答:
根据HTML5规范5.9.8导航到片段标识符:
对于HTML文档(和text / html MIME类型),必须遵循以下处理模型来确定文档的指示部分是什么。
- 解析URL,并让fragid作为URL的
组件。 - 如果fragid是空字符串,则文档的指示部分是文档的顶部。
- 如果DOM中有一个元素的ID刚好等于fragid,则树形顺序中的第一个此类元素是文档的指示部分;在此处停止算法。
- 如果有一个是 一个 在具有名称属性,其值正好等于fragid的DOM元素,然后在树顺序中的第一元件,例如是在文档的所指示的部分;
在此处停止算法。
- 否则,文档中没有指示的部分。
编辑:正如@hsivonen指出的那样,在HTML5中,a
元素没有名称属性。但是,以上规则仍适用于其他命名元素。
以上是 我应该使用“名称”或“ id”制作HTML锚吗? 的全部内容, 来源链接: utcz.com/qa/400363.html