id和name属性之间有什么区别?它们似乎都具有提供标识符的相同目的。

我想知道(特别是关于HTML表单)是否出于任何原因需要或鼓励同时使用两者。


当前回答

链接目标的名称已弃用,在HTML5中无效。至少在最新的Firefox(v13)中,它不再有效。将<a name=“hello”>更改为<a id=“hello“>。

目标不需要是<a>标记。它可以是<p id=“hello”>或<h2 id=“hello>等,这通常是更干净的代码。

正如其他帖子所明确指出的,名称仍然在表单中使用(需要)。它仍然在META标签中使用。

其他回答

ID用于唯一标识元素。

名称用于表单中。虽然您提交了一份表格,但如果您不提供任何名称,将不会提交任何内容。因此,表单元素需要一个名称来通过表单方法(如“get或push”)进行标识。

只有具有name属性的才会熄灭。

链接目标的名称已弃用,在HTML5中无效。至少在最新的Firefox(v13)中,它不再有效。将<a name=“hello”>更改为<a id=“hello“>。

目标不需要是<a>标记。它可以是<p id=“hello”>或<h2 id=“hello>等,这通常是更干净的代码。

正如其他帖子所明确指出的,名称仍然在表单中使用(需要)。它仍然在META标签中使用。

id和名称之间没有字面上的区别。

name是一个标识符,在浏览器发送的HTTP请求中用作与元素的value属性中包含的数据相关联的变量名。

另一方面,id是浏览器、客户端和JavaScript的唯一标识符。因此,表单需要一个id,而其元素需要一个名称。

id更具体地用于向唯一元素添加属性。在DOM方法中,Id在JavaScript中用于引用要在其上执行操作的特定元素。

例如:

<html>

<body>
    <h1 id="demo"></h1>

    <script>
        document.getElementById("demo").innerHTML = "Hello World!";
    </script>
</body>

</html>

name属性也可以实现这一点,但最好在表单中使用id,而在小表单元素(如input标记或select标记)中使用name。

根据个人经验和W3Schools属性描述:

ID是一个全局属性,几乎适用于HTML中的所有元素。它用于唯一标识网页上的元素,其值主要从前端访问(通常通过JavaScript或jQuery)。

name是对HTML中的特定元素(如表单元素等)有用的属性。它的值大部分被发送到后端进行处理。

HTML属性引用

name和id都可以被#作为目标,因此不确定为什么只为该任务提及id。

我经常检查这些属性,以创建指向书签的特定链接(由于某些原因,没有提供使用鼠标光标单击标题以进行相同操作),例如Option File InclusionsMySQL 5.6 4.2.2.2使用选项文件文档部分:

https://dev.mysql.com/doc/refman/5.6/en/option-files.html#option-文件内含物

其中定义为<a name=“option file inclusions”></a>(绝对不涉及表单)。

我认为,在HTML中,name属性也比id旧。