york3rsHola man!!! este ya es un post que lleva algún tiempo pero hasta ahorita me lo encontre y quisiera dar mi opinión, ya que en los post de Cristalab no se pueden realizar actualizaciones de sus contenidos viejos de manera eficaz.
Maikel escribió:
id: es un identificador unico(debería serlo siempre) para cualquier etiqueta html.
name: es un identificador (no necesariamente unico) para los elementos de formulario ...
name no es un atributo solamente utilizado en los formularios lo mismo para el atributo id.
york3rs escribió:
Ahhh y por que se dice que para xhtml ya name no se usa solo hay que utilidad el id.-
Como paso los datos de un formulario con post, por lo que se cuando cuando paso datos de un ....
Y en que parte de la W3C dice eso????
Lo que pasa es que existen diferentes tipos de atributos. En el caso de name este es un atributo opcional. Mientras id es un atributo estandar.
Ahora bien id funciona como un identificador único de cada elemento del código, pero name por ser un atributo opcional tiene diferentes funciones dependiendo de la etiqueta en la que este.
Por ejemplo:
Si utilizas la etiqueta img
Código HTML :
<img src="llaves.png" alt="Llave" name="Llave de puerta" id="llave" />
Te serviría como un parámetro descriptivo, mientras que el id es el identificador, el Alt para mostrar el texto en un Tooltip.
Si utilizas la etiqueta meta
Código HTML :
<head>
.....
<meta name="description" content="Está es la descripción de la página" />
<meta name="keywords" content="HTML,CSS,XML,JavaScript" />
<meta name="author" content="Fulanito de tal" />
.....
</head>
Provee el nombre para la información en el atributo contenido. Cabe aclarar que meta no posee el atributo id.
Ahora bien si lo utilizas en una etiqueta input de tipo radio
Código HTML :
<form ..... >
<label for="hombre">Hombre</label>
<input type="radio" name="sex" id="hombre" />
<label for="mujer">Mujer</label>
<input type="radio" name="sex" id="mujer" />
<label for="manzana">Manzana</label>
<input type="radio" name="fruta" id="manzana" />
<label for="fresa">Fresa</label>
<input type="radio" name="fruta" id="fresa" />
</form>
Como vez en este caso se utiliza nuevamente id como identificador único de la etiqueta, por ende podemos relacionar una etiqueta label con una input por medio de su id. Mientras la etiqueta name se utiliza para agrupar los diferentes input.
En conclusión como se puede apreciar name es diferente a id, y su útilización depende de la etiqueta en la cual trabaje como atributo.

Lamento revivir un post viejo pero la información era un poco difusa y alguien que este empezando podría llegar a no entender la diferencia real de ambos atributos.