我们可以通过一个id选择器设置多个html标签吗? [重复]

问题描述 投票:-3回答:3

这个问题在这里已有答案:

祝大家新年快乐。我有一个重要的问题。我们可以通过一个id选择器在html中为多个标签设置样式吗?当我研究CSS时,我了解到ID选择器用于一次选择标签,但是当我为多个标签提供相同的id时,我感到很惊讶,该样式应用于具有该id的所有标签。这是我的简单代码:

<html>
<head>
  <title>Untitled</title>
  <style type="text/css">
  #link{color:red}
  </style>
</head>
<body>
   <a href="" id="link">RED</a>
   <a href="" id="link">RED</a>
   <a href="" id="link">RED</a>
   <a href="" id="link">RED</a>
</body>
</html>

任何人都可以解释这个案子吗?谢谢

html css css-selectors
3个回答
3
投票

虽然这有效,但这不是有效的html,因为该文档应该具有唯一的,不重复的ID。如果您通过某个验证程序运行该代码,它将给您一个错误。

如果您希望将相同的样式应用于多个元素,则需要查看css类。


2
投票

HTML 4.01HTML 5规范说ID必须是文档范围内唯一的。简而言之:HTML永远不会抛出错误,但重要的是你在页面中只使用ID一次,它应该是唯一的。

这对各种读者都很重要。如果要将相同样式应用于多个元素,请使用class


1
投票

ID选择器必须独特。

它不允许使用重复的ID选择器。它不是标准的

如果你想为多个元素设置相同的ID,你最好使用class

例如,

<html>
<head>
  <title>Untitled</title>
  <style type="text/css">
  #link{color:red}
  .link{
    color: red
  }
  </style>
</head>
<body>
   <!-- Your code...
   <a href="" id="link">RED</a>
   <a href="" id="link">RED</a>
   <a href="" id="link">RED</a>
   <a href="" id="link">RED</a>
   -->
   <a href="" class="link">RED</a>
   <a href="" class="link">RED</a>
   <a href="" class="link">RED</a>
   <a href="" class="link">RED</a>
</body>
</html>
© www.soinside.com 2019 - 2024. All rights reserved.