Ne l'ID d'avoir à être unique dans l'ensemble de la page?
Je suis à l'aide de jQuery et je me demandais simplement, ne ID doivent toujours être unique dans l'ensemble de la page? La classe, je sais, peut être répété autant de fois que vous le souhaitez, qu'en est ID?
- un attribut id est généralement utilisé qu'une seule fois, car un ID est unique
- Vous ne pouvez pas remplacer la définition d'un ID si vous sentez que vous pourriez faire.
- pourquoi tout le monde à droit de vote de cette question? Je peut se, il est simple mais ce n'est pas une raison pour descendre voter, il suffit de passer à la suite...
- les gens ne savent pas le sens de downvote ici.... Je Upvotd.
Vous devez vous connecter pour publier un commentaire.
Oui, il doit être unique.
HTML4:
https://www.w3.org/TR/html4/struct/global.html#h-7.5.2
La Section 7.5.2:
HTML5:
https://www.w3.org/TR/html5/dom.html#element-attrdef-global-id
de mdn
https://developer.mozilla.org/en/DOM/element.id
donc je suppose qu'il vaut mieux être...
Techniquement, par les normes HTML5 ID doit être unique dans la page - https://developer.mozilla.org/en/DOM/element.id
Mais j'ai travaillé extrêmement modulaire des sites web, où c'est complètement ignoré et il fonctionne. Et ça a du sens - le plus surprenant de la partie.
Nous l'appelons la "modularité"
Par exemple, vous pourriez avoir un composant sur votre page, ce qui est une sorte de widget. Il a des trucs à l'intérieur de leur propre unique Id par exemple "bouton ok"
Une fois il ya beaucoup de ces widgets sur la page, vous techniquement non valides HTML. Mais il est parfaitement logique pour ventile vos widgets de manière à ce que chacun, en interne, en référence à leur propre bouton ok si par exemple à l'aide de jquery à la recherche de ses propres racines, il pourrait être:
$widgetRoot.find("#ok-button")
Cela fonctionne pour nous, si, techniquement, les Id ne doit pas être utilisé à tous, une fois qu'ils ne sont pas uniques.
Comme cité ci-dessus, même YouTube t-il, il n'est pas si renegade.
Navigateurs utilisés pour être indulgent sur ce (il y a plusieurs années lorsque css était jeune) et de permettre l'ID pour être utilisé plus d'une fois. Elles sont devenues plus strictes.
Cependant, oui ID sont uniques et ne sont utilisées qu'une fois.
Si vous avez besoin d'utiliser du css mise en forme plus d'une fois l'utilisation de la CLASSE.
Jan 2018, voici Youtube HTML , vous pouvez voir id="bouton" id="info" sont dupliqués.
Que c'est en fait le point de l'ensemble d'une pièce d'identité. 🙂 Id sont spécifiques, ne peut être utilisé qu'une fois par page. Les Classes peuvent être utilisées comme heureux.
Oui, les Id sont uniques. La classe ne le sont pas.
Id toujours être unique.
Tout le monde a un unique numéro d'identification (ex. Numéro de Sécurité sociale), et il y a beaucoup de gens dans une social classe
Avec Javascript, vous pouvez uniquement faire référence à un élément à l'aide de l'ID.
document.getElementById
et jQuery$
sélecteur sera de retour que le premier élément correspondant. Donc ça n'a pas de sens en utilisant le même IDENTIFIANT sur plusieurs éléments.Il y a de grandes réponses pour une même question à https://softwareengineering.stackexchange.com/questions/127178/two-html-elements-with-same-id-attribute-how-bad-is-it-really.
Une friandise ne sont pas mentionnés ci-dessus est que si il y a plusieurs identiques
id
s de la même page (ce qui arrive, même si elle viole la norme):