既然id选择器只能使用一次,为什么还是会有效果

不打酱油路过
2014-08-28
22 回答
css里id选择器可以用很多次,没规定只能一次,但是html中给元素指定的id最好不要重复。在你的例子中,两个相同id的元素都变成红色,这是没问题的,css不会去验证id的重复性,凡是符合条件的元素只管应用样式就行。
但JavaScript中,当操作一个元素时,需要先获取这个元素对象,比如你例子中的“三年级”“公开课”这两个<span>。
获取元素对象我所知道的有四种方法
document.getElementById("id") /*id属性*/ document.getElementsByName("name") /*name属性*/ document.getElementsByTagName("tag") /*标签名*/ document.getElementsByClassName("class") /*类名*/
你在例子中给“三年级”和“公开课”指定了 id,并且 id 都为 stressid,那么你在调用document.getElementById("stressid") 时并不能获取到两个对象,只有“三年级”一个,也就是第一个被指定为该id的元素对象。所以说,在精确定位元素的需求下,我们应该遵守同一文档中的 html 元素 id 唯一。
其他三个方法返回值都是集合,也就是说允许重复的存在,能够返回所有符合条件的元素对象,可以用下标取值。
首页上一页123下一页尾页
举报
0/150
提交
取消