<p>到了<span id="stressid">三年级</span>下学期时,我们班上了一节<span id="stressid">公开课</span>,老师提出了一个很简单的问题,班里很多同学都举手了,甚至成绩比我差很多的,也举手了,还说着:"我来,我来。"我环顾了四周,就我没有举手。</p>
我提交后运行也确实三年级与公开课都变成了红色,我在其他编辑器里运行也是正确显示的,不理解为什么他说是唯一使用的
也碰到了这个问题。
按理说,id的唯一性是为了js而考虑的,在CSS里可能没有强制性的规定吧,CSS中的#只是选择器,可能没有选择第一个还是全部的额外约束。
就是还不清楚html/CSS/JS中对id的相关性约束具体怎么样了,是不是版本不同约束性也不一样啊。
用了会咋样?
所谓ID只能用一次,指的是就像一个人对应一个身份证一样,是不能有重复一样的,那么也就是你的这个页面中,<h1 id="xx"></h1>这里面的xx只能成为一个元素的id而不能继续成为p元素的id,你这样写是有违语法规范的。而你理解错了,在于你以为是效果只能用一次,实际上是只能被一个元素所拥有。
你的页面上看到了两个元素都是红色,这就好比你的身份证本来是你唯一持有的,却被坏人复制了,那么你所拥有的红色属性,他也可以拥有了。一般而言,是以类名class来定义样式的,就好比,你可以去买一个杯子,别人也可以买一个杯子,你们买的杯子都是一起机器制作的,是可以一模一样的。
一般来说,我们都是用类来定义不同元素的样式的,而id更多的是用在对此元素有唯一的设定,不论是设定样式还是交互效果
ID选择器只能在文档中使用一次