html/css 一个id选择器能用在不同元素上吗?

书上说

假设你想选择id为footer的任意元素:

#footer {
    color:red;
}

或者可以只选择id为footer的一个‘p’元素:

p#footer {
    color:red;
}

我用validator验证过,html中不能存在一个以上的同名id选择器,那么是书上写错了?书上的意思不就是能存在n个id吗?

阅读 11.9k
9 个回答

在标准里,一个完整的HTML页面中只能有一个ID叫footer的元素。

但是css有容错,会全部渲染。同时js严格遵守标准,如果有多个,那么选中的DOM对象会是页面从上到下的第一个

一个页面可以出现多个id,但不能同名。一般来说,建议使用class,少用id。

id 名称是唯一标示,不能重复出现。

若是要应用在多个元素上,建议用class或者自定义属性 。。 id不建议

ID的初衷就是页面唯一的;

此题已解决,新回答不再接受

标准里一个html页面里相同名字的ID是唯一的,表示一个唯一的元素,class是可以多次

我猜这书是译本吧?
应该是翻译的差异,作者可能是想表达“你可以将任何元素的ID设置为footer”,这里的任意指的不是数量。

id犹如小三只能被一个人包养,class犹如小姐可以伺候多人!

ID是程序员用的,css HTML开发者一般用class 谢谢采纳!!!

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题